1.5 KiB
scouthub-attivita-be
Backend Node.js/TypeScript/Express/Prisma per la gestione di attivita scout — sostituisce il precedente backend Java/Spring Boot.
Prerequisiti
- Node.js 18+
- Un'istanza PostgreSQL raggiungibile (locale o remota)
Variabili d'ambiente
Copiare .env.example in .env e valorizzare le variabili richieste
(PORT, CORS_ORIGIN, DATABASE_URL, DATABASE_URL_TEST). Vedere
.env.example per il formato atteso e i valori di default usati in sviluppo.
Sviluppo locale
npm install
npx prisma migrate dev
npm run db:seed
npm run dev
Il server si avvia sulla porta definita da PORT (default 8080) e risponde
su GET /health.
Test
npm test
Richiede DATABASE_URL_TEST configurato in .env e puntato a un database
PostgreSQL dedicato ai test, con le migration gia' applicate: la suite
esegue un TRUNCATE delle tabelle tra un test e l'altro, quindi va tenuto
separato dal database di sviluppo.
Note
- L'autenticazione reale non e' ancora implementata: l'autore delle attivita'
e' ancora hardcoded a
"Movio"nel router privato, e il middlewareauthPlaceholdere' un pass-through. - Porta e CORS sono gia' letti da variabili d'ambiente in previsione di un
futuro
docker-compose.yml(non incluso in questa feature).
Riferimento storico
La cartella DDL/ contiene gli script SQL dello schema originale del
backend Java (MySQL), mantenuti come riferimento storico. Lo schema attuale
(PostgreSQL) e' definito in prisma/schema.prisma e gestito tramite Prisma
Migrate.