- Farbwerte (hell/dunkel), IBM Plex Sans und Textmarkierung aus dem VVL-Tool übernommen - Umschalter Hell/Dunkel in der Kopfzeile, Wahl wird gemerkt (Standard: Systemeinstellung) - Kopfleiste <hi-topbar> folgt dem Farbschema des jeweiligen Tools Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
46 lines
1.5 KiB
JSON
46 lines
1.5 KiB
JSON
{
|
||
"name": "handy-insel-portal",
|
||
"version": "0.1.0",
|
||
"private": true,
|
||
"type": "module",
|
||
"description": "Handy-Insel Portal – zentrale Startseite und App-Umschalter für alle internen Tools (Authentik-SSO)",
|
||
"scripts": {
|
||
"dev:server": "tsx watch server/src/index.ts",
|
||
"dev:web": "vite",
|
||
"build": "npm run build:web && npm run build:topbar && npm run build:server",
|
||
"build:web": "vite build",
|
||
"build:topbar": "esbuild topbar/src/topbar.ts --bundle --minify --format=iife --target=es2019 --outfile=dist/public/topbar.js",
|
||
"build:server": "tsc -p server/tsconfig.json",
|
||
"start": "node dist/server/index.js",
|
||
"typecheck": "tsc -p server/tsconfig.json --noEmit && tsc -p frontend/tsconfig.json --noEmit"
|
||
},
|
||
"engines": {
|
||
"node": ">=20"
|
||
},
|
||
"dependencies": {
|
||
"@fontsource/ibm-plex-sans": "^5.3.0",
|
||
"better-sqlite3": "^12.11.1",
|
||
"express": "^4.22.3",
|
||
"express-session": "^1.19.0",
|
||
"helmet": "^8.3.0",
|
||
"openid-client": "^6.8.8"
|
||
},
|
||
"devDependencies": {
|
||
"@tailwindcss/vite": "^4.3.3",
|
||
"@types/better-sqlite3": "^9.6.0",
|
||
"@types/express": "^4.17.25",
|
||
"@types/express-session": "^1.19.0",
|
||
"@types/node": "^26.6.3",
|
||
"@types/react": "^19.3.0",
|
||
"@types/react-dom": "^19.3.0",
|
||
"@vitejs/plugin-react": "^6.1.1",
|
||
"esbuild": "^0.28.2",
|
||
"react": "^19.3.0",
|
||
"react-dom": "^19.3.0",
|
||
"tailwindcss": "^4.3.3",
|
||
"tsx": "^4.23.15",
|
||
"typescript": "^7.0.2",
|
||
"vite": "^8.3.1"
|
||
}
|
||
}
|