Files
lernbar/package.json
T
Florian WildeandClaude Opus 5.5 adb93a722f Kontowerkzeug ins Abbild, Containerabnahme
Die README nannte `node werkzeuge/konto.js`, im Abbild lag aber nur das
Sicherungswerkzeug, und tsx gibt es dort nicht. Ein frisch aufgesetzter
Server stand ohne jedes Konto da. Das Kontoskript wird jetzt beim Bau mit
esbuild zu einer Datei gebuendelt; die nativen Module bleiben aussen vor,
sie bringt die Standalone-Ausgabe mit.

Aufgefallen ist das nicht, weil der Abnahmelauf gegen `next start` prueft.
Neu ist deshalb `npm run abnahme:container`: Abbild bauen, mit leerem
Volume starten, erstes Konto anlegen, anmelden, Passwort neu setzen,
sichern.

Ausserdem trennt saubererName Windows-Pfade jetzt auch unter Linux ab
(path.win32.basename). Der Test dazu war nur unter Windows gruen.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 00:50:59 +02:00

62 lines
1.9 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"name": "lernbar",
"version": "1.0.0",
"private": true,
"description": "Lern-Bar – betriebliche Ausbildung Fachinformatiker Systemintegration",
"engines": {
"node": ">=22"
},
"scripts": {
"dev": "next dev",
"build": "next build",
"start": "next start",
"lint": "eslint .",
"typecheck": "tsc --noEmit",
"test": "vitest run",
"test:watch": "vitest",
"e2e": "playwright test",
"inhalte:pruefen": "tsx scripts/inhalte-pruefen.ts",
"konto:anlegen": "tsx scripts/konto-anlegen.ts",
"werkzeuge:bauen": "esbuild scripts/konto-anlegen.ts --bundle --platform=node --target=node22 --format=cjs --external:better-sqlite3 --external:@node-rs/argon2 --outfile=build/werkzeuge/konto.js",
"backup": "bash scripts/im-container/sicherung.sh",
"restore": "bash scripts/im-container/wiederherstellen.sh",
"screenshots": "tsx scripts/screenshots.ts",
"symbole": "tsx scripts/symbole.ts",
"abnahme": "node scripts/pruefungen/abnahme.mjs",
"abnahme:container": "node scripts/pruefungen/container.mjs"
},
"dependencies": {
"@node-rs/argon2": "^2.0.2",
"better-sqlite3": "^12.11.1",
"drizzle-orm": "^0.45.2",
"markdown-it": "^14.1.0",
"next": "^15.5.4",
"pdfkit": "^0.17.1",
"react": "^19.1.0",
"react-dom": "^19.1.0",
"server-only": "^0.0.1",
"yaml": "^2.8.0",
"zod": "^3.25.76"
},
"devDependencies": {
"@eslint/eslintrc": "^3.3.7",
"@playwright/test": "^1.55.0",
"@types/better-sqlite3": "^7.6.13",
"@types/markdown-it": "^14.1.2",
"@types/node": "^22.15.0",
"@types/pdfkit": "^0.14.0",
"@types/react": "^19.1.0",
"@types/react-dom": "^19.1.0",
"eslint": "^9.34.0",
"eslint-config-next": "^15.5.4",
"tsx": "^4.20.0",
"typescript": "^5.9.2",
"vitest": "^3.2.4"
},
"allowScripts": {
"better-sqlite3@12.11.1": true,
"esbuild@0.28.2": true,
"unrs-resolver@1.12.2": true
}
}