|
|
||
|---|---|---|
| .devcontainer | ||
| .vscode | ||
| docs | ||
| public/images | ||
| src | ||
| .editorconfig | ||
| .env.example | ||
| .gitignore | ||
| .prettierignore | ||
| .prettierrc.json | ||
| README.md | ||
| angebotsuebersicht.html | ||
| booking.html | ||
| index.html | ||
| package-lock.json | ||
| package.json | ||
| paket-details.html | ||
| playwright.config.js | ||
| vite.config.js | ||
README.md
Tri-Hub Ernährungsberatung
Im Dev Container starten
- Repository klonen und in VS Code „Dev Containers: Reopen in Container“ wählen. Bei einem bereits vorhandenen Container einmal „Dev Containers: Rebuild Container“ ausführen, damit Mailpit installiert wird.
- Die Einrichtung installiert automatisch die npm-Abhängigkeiten und erstellt
.envaus.env.example, sofern noch keine.envvorhanden ist. - In drei getrennten Terminals in dieser Reihenfolge starten:
npm run dev:mail
npm run dev:server
npm run dev
Startseite: http://localhost:5173 — über „Beratung kennenlernen“ zur Angebotsübersicht und von dort zum Buchungsformular des gewählten Pakets. Direkt: http://localhost:5173/angebotsuebersicht.html Mailansicht: http://localhost:8025. Beide Web-Ports werden vom Dev Container weitergeleitet. Mailpit läuft im selben Container auf SMTP-Port 1025 und fängt Testmails lokal ab, ohne sie extern zu versenden.
Die Container-Konfiguration installiert Mailpit v1.31.2 aus dem
offiziellen Docker-Image.
Die Binärdatei, lokale Mails, .env und Buchungsdaten werden nicht committed.
Mailpit verwendet ohne Datenbankpfad einen temporären Speicher; Testmails müssen
nach einem Neustart nicht erhalten bleiben.
Ohne Dev Container: Node.js 24 und Mailpit installieren, npm ci ausführen und
.env.example nach .env kopieren, falls .env fehlt. Danach dieselben drei
Startbefehle verwenden.
Ohne Mailpit wird die Buchung gespeichert, aber der fehlgeschlagene Mailversand
angezeigt. Der Ablauf bleibt eine Simulation ohne Zahlung oder verbindliche
Beratung. Buchungen liegen lokal in src/server/data/bookings.csv. Diese Datei
nicht vorab leer anlegen: Das Backend erzeugt sie bei der ersten Buchung selbst.
Prüfen
npm test
npm run build
npm run test:browser
Die Browsertests starten eigene Server auf 3000 und 5173; diese Ports vorher
freihalten. Sie verwenden eine temporäre CSV und simulierten Mailversand.
Falls Chromium fehlt: npx playwright install chromium.
Der Build enthält Startseite, Angebotsübersicht und Buchungsseite. Für ein
Deployment zusätzlich das Node-Backend betreiben und /api dorthin weiterleiten.