LexImpact Dotations UI
Pré-requis
Ce dépôt nécessite NodeJS v22.x.x.
Il fait appel au framework Svelte en version 5 release candidate avec le langage TypeScript.
Le style est géré sur la base du framework CSS Tailwind CSS.
Installation
Initialiser le dépôt avec le fichier d'environnement .env.example
et installer les dépendances :
cp .env.example .env
npm install
Configurer l'application
leximpact-dotations-ui
emploie trois API web :
-
territoires
pour le moteur de recherche de communes, -
leximpact-dotations-back
pour la récupération des critères des communes et le calcul des dotations, -
tricoteuses
pour la récupération des textes des articles de loi.
Son calcul est adaptable à une période donnée. Son affichage est adaptable :
- à des valeurs présentées par défaut au chargement de l'application (nombre de communes, liste par défaut de communes, strates)
- à la présence et l'absence d'un Projet de loi de finances (PLF) en cours d'examen.
L'ensemble de ces éléments sont configurables dans :
- un fichier
.env
dédié en particulier à distinguer les modes intégration et production - un fichier interne
src/lib/config.ts
pour tous les autres éléments complémentaires (liste de communes par défaut, ...).
À l'installation de l'application, vérifier la configuration du fichier .env
. Par exemple pour la production l'ID du site Matomo doit être 11
.
Démarrer l'application pour son développement
Démarrer un serveur de développement avec la commande suivante :
npm run dev
# ou démarrer le serveur et ouvrir l'application dans un nouvel onglet de navigateur avec :
npm run dev -- --open
L'application s'ouvre alors à l'adresse suivante : http://localhost:5173/
Tester l'application
npm run test
Ou, pour exécuter un unique fichier de test Vitest :
npm run testunit:watch src/lib/calculate.test.ts
Paqueter l'application
Pour créer une version de production de l'application :
npm run build
Il est possible de visualiser le résultat avec npm run preview
.
To deploy your app, you may need to install an adapter for your target environment.
Dépendance(s) à API web
Pour les calculs de dotations, leximpact-dotations-ui
dépend de l'API web définie par leximpact-dotations-back.
Non décrit ici (à compléter) : dépendance à tricoteuses pour les textes législatifs + dépendance à territoires pour la liste des territoires DGCL.
Contribuer à l'application ou mettre à jour de la loi simulable
Pour en savoir plus sur les modalités de contribution et la mise à jour des règles (typiquement, en cas d'évolution annuelle de la loi) consulter le fichier CONTRIBUTING.md.