- node
- npm
- serveur Postgres (sur macOS, possible d'utiliser postgresapp)
- commande psql dans le PATH (pour le chargement des données)
- serveur mail (par exemple mailDev)
Créer une base de données vide pour l'application (par exemple zlv
) et une autre pour les tests (par exemple test_zlv
).
La création des tables et autres structures SQL se fera automatiquement lors du lancement de l'application via les migrations KnexJS contenues dans le répertoire /database/migrations
Créer un fichier .env
directement dans le répertoire zero-logement-vacant
avec à minima les variables suivantes :
DATABASE_URL=postgres://user@localhost/zlv
DATABASE_URL_TEST=postgres://user@localhost/test_zlv
AUTH_SECRET=secret
MAILER_HOST=localhost
MAILER_PORT=1025
MAILER_USER=
MAILER_PASSWORD=
Il est également possible dans ce fichier .env
de surcharger les valeurs par défaut des autres variables d'environnement définies dans /server/utils/config.ts
git clone https://github.com/MTES-MCT/zero-logement-vacant.git
cd zero-logement-vacant
npm i
cd frontend
npm i
Développement / Staging
cd database/scripts
psql [DATABASE_URL] -f 001-load-establishments-localities.sql -v filePath=../data/common/epci.csv
psql [DATABASE_URL] -f 002-load-data.sql -v filePath=../data/dummy/dummy_data.csv
npm run seed
Permet le chargement de données minimales pour faire fonctionner l'application avec des données anonymisées pour les collectivités suivantes :
- Eurométropole de Strasbourg
- CA Saint-Lô Agglo
et trois utilisateurs :
- test.strasbourg@zlv.fr / test => utilisateur avec des droits pour Eurométropole de Strasbourg
- test.saintlo@zlv.fr / test => utilisateur avec des droits pour Saint-Lô
- test.admin@zlv.fr / test => utilisateur avec des droits d'administration
Production
Le chargement des données se fait à partir de fichier d'extractions de données au format csv.
cd database/scripts
psql [DATABASE_URL] -f 001-load-establishments-localities.sql -v filePath=../data/common/epci.csv
psql [DATABASE_URL] -f 002-load-data.sql -v filePath=[DATA_CSV_FILE]
psql [DATABASE_URL] -f 003-load-buildings.sql -v filePath=[BUILDING_CSV_FILE]
npm run seed
npm run start-local
L'application est accessible à l'adresse sur http://localhost:3000
Frontend
npm run frontend:test
Backend
npm run test
La version de démo de l'application est accessible à l'adresse https://zerologementvacant-staging.incubateur.net
La version de production de l'application est accessible à l'adresse https://zerologementvacant.beta.gouv.fr