Stack
Ce sur quoi l’app est construite, et où ça vit dans le repo.
Technique
- Next.js 16 (App Router) + React 19 + TypeScript
- Tailwind CSS 4 + shadcn/ui
- Drizzle ORM + PostgreSQL
- better-auth pour les sessions
- MapLibre GL pour la carte
- Bun comme runtime / test runner
- BullMQ + Redis pour les workers (restauration SIREN, import IREP)
Où regarder
| Zone | Rôle |
|---|---|
app/ | Pages et routes API |
components/ | UI (carte, synergies, shadcn) |
lib/ | Logique métier testée |
drizzle/ | Schéma + migrations |
scripts/ | Workers, imports, sync DB |
AGENT.md | Conventions pour les agents IA |
Données
SIRENE (établissements)
├── ICPE (installations classées)
├── IREP (émissions, déchets)
├── PFAS, carrières, terrain
└── SB (matières, process, compositions)
└── synergies · overlays · génériques
└── territoire (filtre par EPCI / siret)Quatre bases Postgres distinctes : prod, preview, dev VPS
(défaut) et dev locale (Docker, rarement utilisée). Ne pas les
confondre. Détail dans AGENT.md.
La logique pure vit dans lib/ et est testée avec bun test.
Les routes API et le JSX ne sont pas testés unitairement.