ArchitectureADRs
ADR-011: Repository Structure
Status: Accepted
Kontext
Storefront, Dashboard, API, Docs und gemeinsame TypeScript-Pakete sollen atomar versioniert und gemeinsam entwickelt werden können.
Entscheidung
ByteBite verwendet ein TypeScript-Monorepo mit pnpm und Turborepo.
Zielstruktur:
apps/
storefront/
dashboard/
api/
docs/
packages/
db/
domain/
auth/
schemas/
types/
config/
observability/Es wird bewusst kein packages/ui angelegt: shadcn/ui-Komponenten liegen lokal im Dashboard (apps/dashboard/src/components/ui/), und der Storefront besitzt seine eigenen UI-Komponenten. Die initiale ADMIN-Oberfläche ist ein geschützter Bereich im Dashboard, kein separates apps/admin.
Konsequenzen
- Gemeinsame Typen/Schemas können wiederverwendet werden.
- Apps bleiben trotzdem getrennte Deployments.
- Änderungen über FE und BE können atomar committed werden.
- Kein geteiltes UI-Paket; UI bleibt lokal pro App.