Baustein 1: Grundgeruest, Datenbank, Anmeldung, zwei Rollen
Legt das Fundament der Lern-Bar an: - Next.js 15 (App Router), React 19, TypeScript, ESLint, Vitest - SQLite ueber Drizzle hinter einer Repository-Schicht - Eigener Migrationslauf mit Pruefsummen, beim Start angewendet - Argon2id, serverseitige Sitzungen, HttpOnly-Cookie, SameSite=Lax - Rollen Ausbilder und Azubi, Rechteregeln als reine Funktionen - Verwaltung: Azubikonto und Ausbildung anlegen, Passwort, Sperren - Gestaltung Petrol/Bernstein, helle und dunkle Darstellung - Dockerfile, docker-compose, Lebenszeichen, update.sh mit Rueckfall - Sicherung und Wiederherstellung als Shell-Skripte - 29 Tests fuer Rechte, Zeitrechnung und Migrationslauf Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
+69
@@ -0,0 +1,69 @@
|
||||
# Fahrplan
|
||||
|
||||
Die Bausteine werden der Reihe nach umgesetzt. Nach jedem Baustein gibt es
|
||||
einen lauffähigen Stand, einen Eintrag im [Änderungsprotokoll](CHANGELOG.md)
|
||||
und eine Zeitnotiz im [Arbeitstagebuch](DEVLOG.md).
|
||||
|
||||
Legende: `[ ]` offen · `[~]` in Arbeit · `[x]` fertig
|
||||
|
||||
---
|
||||
|
||||
## 0.1 – Fundament
|
||||
|
||||
- [x] **B1 · Gerüst, Docker, Datenbank, Migrationen, Anmeldung, zwei Rollen**
|
||||
- [x] Next.js 15 (App Router), TypeScript, ESLint, Vitest, Playwright
|
||||
- [x] SQLite über Drizzle, eigener Migrationslauf beim Start
|
||||
- [x] Argon2id, serverseitige Sitzungen, HttpOnly-Cookie, SameSite=Lax
|
||||
- [x] Rollen `ausbilder` / `azubi`, reine Rechteregeln getrennt testbar
|
||||
- [x] Verwaltung: Azubikonto und Ausbildung anlegen, Passwort setzen, sperren
|
||||
- [x] Dockerfile (mehrstufig), docker-compose.yml, Lebenszeichen
|
||||
- [x] `update.sh` für den Linux-Server mit Sicherung und Rückfall
|
||||
- [x] `sicherung.sh` / `wiederherstellen.sh`
|
||||
|
||||
## 0.2 – Inhalte
|
||||
|
||||
- [ ] **B2 · Inhalte einlesen und validieren, Handouts anzeigen, Suche**
|
||||
- [ ] Markdown mit YAML-Frontmatter, Zod-Prüfung, Start bricht bei Fehler ab
|
||||
- [ ] Fehlermeldung nennt Datei und Zeile
|
||||
- [ ] Handout-Ansicht mit festem Aufbau, Themenblöcke, „gelesen" merken
|
||||
- [ ] Volltextsuche über alle Handouts
|
||||
- [ ] Neu einlesen bei Dateiänderung im Entwicklungsbetrieb
|
||||
|
||||
## 0.3 – Woche und Wiederholung
|
||||
|
||||
- [ ] **B3 · Wochenplan als Startseite, Fortschritt, Wochen verschieben**
|
||||
- [ ] **B4 · Merkkarten mit Wiederholung nach Zeitabstand (SM-2)**
|
||||
|
||||
## 0.4 – Nachweise
|
||||
|
||||
- [ ] **B5 · Praxisaufgaben mit Anhängen und Abnahme**
|
||||
- [ ] **B6 · Checklisten mit Durchläufen und PDF**
|
||||
- [ ] **B7 · Berichtsheft: Tagesnotizen, Vorschläge, Prüfung, Abzeichnen, PDF**
|
||||
|
||||
## 0.5 – Bewertung
|
||||
|
||||
- [ ] **B8 · Lernzielkontrollen mit Freigabe, Abgabe, Korrektur**
|
||||
- [ ] **B9 · Auswertung, Rahmenplanabdeckung, Feedbackgespräch**
|
||||
|
||||
## 1.0 – Abrundung
|
||||
|
||||
- [ ] **B10 · PWA, Offlinebetrieb, Druckansichten, Feinschliff**
|
||||
- [ ] Anleitung mit Screenshots (`docs/ANLEITUNG.md`), Bilder automatisiert
|
||||
über `npm run screenshots`
|
||||
- [ ] Ende-zu-Ende-Test über den Hauptweg
|
||||
- [ ] Abnahmekriterien einzeln durchgespielt und protokolliert
|
||||
|
||||
---
|
||||
|
||||
## Danach – bewusst zurückgestellt
|
||||
|
||||
- Erinnerung freitags per E-Mail (in der Anwendung reicht zunächst)
|
||||
- Importskript für vorhandenes Material (52 Handouts, 8 Checklisten, …),
|
||||
sobald die Quelldateien vorliegen
|
||||
- Wechsel auf PostgreSQL (vorbereitet durch die Repository-Schicht, aber
|
||||
ohne Anlass nicht sinnvoll)
|
||||
|
||||
## Ausdrücklich nicht geplant
|
||||
|
||||
Mehrmandantenfähigkeit · Chat und Kommentare · Gamification ·
|
||||
Inhaltseditor in der Oberfläche · IHK-Schnittstellen · KI-Funktionen
|
||||
Reference in New Issue
Block a user