Architecture Decisions
Decision 1 — App Router + TypeScript
Why: standar modern Next.js, maintainability tinggi, dev experience bagus.
Decision 2 — UI baseline Tailwind + daisyUI
Why: fast shipping with consistent baseline components.
Decision 3 — API-first integration
Why: backend contract jadi sumber kebenaran, mengurangi mismatch FE/BE.
Decision 4 — Mandatory Quality Gate
Why: mencegah technical debt masuk ke branch utama.
Trade-off utama
- Opinionated structure mempercepat start, tapi mengurangi kebebasan improvisasi awal.
- Menambah guardrail di awal sedikit memperlambat eksperimen, tapi mengurangi rework besar.