Skip to content

betagouv/seves

Repository files navigation

Sèves

Gestion mutualisée de tous les événements sanitaires

Technologies

  • Git
  • PostgreSQL
  • Python 3
  • Django
  • HTML, CSS
  • Système de Design de l'État DSFR
  • JavaScript (AlpineJS, vanilla)
  • Pytest
  • Playwright (tests E2E)
  • Ruff (linter/formatter)
  • Pre-commit
  • DjHTML (indenter)

Installation et configuration

Récupération du code source

git clone git@github.com:betagouv/seves.git

Python 3

Assurez vous d'avoir Python 3 d'installé.

Création de l'environnement virtuel Python

python3 -m venv venv

Activation de l'environnement virtuel Python

source venv/bin/activate

Installation de pip-tools

pip install pip-tools

Installation des dépendances Python

pip-sync

Création de la base de données

Créez la base de données via un client PosgreSQL ou la ligne de commande psql (exemple: seves).

Variables d'environnement

Copiez le fichier d'exemple fourni (.env.dist) et définissez les variables d'environnement :

cp .env.dist .env

Initialisation de la base de données

./manage.py migrate

Creation d'un super utilisateur pour l'accès à Django Admin

./manage.py createsuperuser

Démarrer le serveur de développement

./manage.py runserver

Se rendre sur http://localhost:8000/

Gestion des dépendances Python

Les dépendances sont gérées via pip-tools.

Pour ajouter une nouvelle dépendance au projet :

  • ajoutez la dépendance dans le fichier requirements.in
  • executez la commande pip-compile (pour mettre à à jour le fichier requirements.txt)
  • executez la commande pip-sync (installation de la nouvelle dépendance)

Tests

E2E

Les tests E2E sont réalisés avec la bibliothèque Playwright (installé précédemment).

Avant de pouvoir lancer les tests E2E, il faut installer les navigateurs (source) :

playwright install

Lancez les tests :

python -m pytest

Recette

Déploiement

git push scalingo main

Django admin

Création d'un super user (commande CLI scalingo à éxecuter en local) : scalingo --app seves-poc python manage.py createsuperuser

Production

About

Gestion mutualisée de tous les événements sanitaires

Resources

License

Stars

Watchers

Forks