ADR — Stack snapshot (as-built)
TL;DR
Record the observed technology choices for LumenDev Invoice as of 2026-05-15: Next.js 16 (App Router), React 19, MongoDB via Mongoose 9, client-side PDF via @react-pdf/renderer, Tailwind 4; no dedicated auth library in package.json.
Context
- The app repo targets a single Node service talking to MongoDB; ops notes live in
AGENTS.md.
- This ADR is a snapshot, not a pending fork — it documents what the codebase already uses.
Decision
Accepted as the working stack:
| Layer | Choice |
|---|
| App | Next.js 16 App Router (src/app/) |
| UI | React 19, Tailwind 4 |
| Data | MongoDB + Mongoose 9 |
| PDF | @react-pdf/renderer (client) |
| Auth | None packaged in dependencies (revisit if product adds login) |
Consequences
- Technical deep dives (routes, schema, API tables) should live in the repo
docs/ submodule per project-docs-sync.
- Any future auth, hosting, or DB change should update this ADR or add a superseding ADR + vault Recent Changes.
Alternatives Considered
- N/A for this snapshot ADR — alternatives would be captured in a future ADR when a migration is proposed.