docs: codify the conventions the code follows, drop the unused tabs dependency

docs/development.md states the rules the code now enforces or keeps:
server-only modules and the import-graph test (which now also forbids
the daily pick and the region locator from client bundles), route
decides best-effort and the library never swallows, typed failure kinds
mapped to statuses, claim before write, one module per storage concern
through the guarded store, useEffectEvent for imperative callbacks,
unprefixed logical keys, three fixed region levels, and the response
contract. The parameter rule now says what it always meant: React
components destructure props. @radix-ui/react-tabs had no component
using it. Stale lines about tabs, pagination, a leaderboard migration
and a sub-second suite are corrected.
This commit is contained in:
tiennm99 committed 2026-09-21 16:25:53 +07:00
1 parent 9f663af460
commit 11bfa59377
10 files changed
+129 -94

No files matched your search

+2 -2
View File
@@ -58,7 +58,7 @@
## UI Components & Styling
- **shadcn/ui**: Complete component library with "new-york" style
- **Radix UI**: Headless component primitives -- dialog, label, slot, tabs, plus
- **Radix UI**: Headless component primitives -- dialog, label, slot, plus
accordion (province expansion) and select (region picker)
- **Lucide React**: Icon library
- **class-variance-authority**: Component variant management
@@ -66,7 +66,7 @@
## Testing
- **Vitest**: Test runner for the logic in `src/lib/`, the API routes, the
generated region data, and the leaderboard migration
generated region data, and the pipeline script helpers
- **In-memory Upstash fake**: Default Redis backing store, no service required
- **PGlite**: In-process Postgres (WASM) mocked in at the
`@neondatabase/serverless` boundary, so the panorama queries run against real