# 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 ```bash 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 ```bash 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 middleware `authPlaceholder` e' 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.