Base Next.js (App Router) + Tailwind pour l Epic 1:
- US-001: homepage + recherche ville/commerce en base locale
- US-002: pages legales FR
- US-003: disclaimers non-affiliation sur page commerce
npm install
npm run dev- Copier les variables d'environnement:
cp .env.example .env- Demarrer PostgreSQL:
npm run db:upSi le port 5432 est deja utilise, lancer sur un autre port:
POSTGRES_PORT=55432 npm run db:up- Appliquer les migrations Prisma:
npm run prisma:migrate- Generer le client Prisma:
npm run prisma:generateImport complet (full refresh):
npm run import:boucheries -- --data-dir ./dataOptions:
--nace-version(defaut:2025)--nace-codes(codes exacts, separes par virgules)
Codes exacts utilises par defaut:
- Boucheries:
47.22,47.221,47.222
Exemple:
npm run import:boucheries -- --data-dir ./data --nace-version 2025 --nace-codes "47.22,47.221,47.222"Verifications SQL rapides:
SELECT COUNT(*) FROM "Commerce";
SELECT COUNT(*) FROM "ImportRun" WHERE status = 'SUCCESS';
SELECT "establishmentNumber", "slug" FROM "Commerce" LIMIT 20;- Configurer
DATABASE_URLdans.env(adapter le port si besoin):
DATABASE_URL=postgresql://cotalos:cotalos@localhost:5432/cotalos?schema=public- Demarrer l app:
npm run dev- Recherche live disponible via:
- endpoint
GET /api/search?q=...&limit=... - homepage
/(suggestions dynamiques) - pages
/boucheries/[ville]et/boucherie/[slug]alimentees depuis PostgreSQL
npm run typecheck
npm run test
npm run test:e2eMettre a jour les placeholders dans:
lib/site-config.ts
//cookies/mentions-legales/politique-confidentialite/gerer-ou-supprimer-cette-fiche/boucherie/[slug]/boucheries/[ville]