2.8 KiB
Documentation et apprentissage
La documentation de publicodes est disponible sur https://publi.codes.
Un wiki contenant des informations intéressantes sur publicodes et le raisonnement ayant abouti à ce langage sont dispos sur le repository betagouv/publicodes
Pour se familiariser avec les règles, vous pouvez jeter un œil aux fichiers
contenant les règles elles-mêmes (dans le dossier modele-social
) mais cela
peut s'avérer assez abrupt.
Essayez plutôt de jeter un œil aux tests dans un premier temps, et pourquoi pas à à l'implémentation des mécanismes.
Traduction des normes (lois) en règles Publicodes
Checklist :
- Lire les articles de vulgarisation (sur le site de l'URSSAF, des impôts, etc.).
- Utiliser un moteur de recherche spécialisé, comme RFPaye.
- Lire les normes et noter leurs références dans les règles Publicodes.
Développement de modele-social et de mon-entreprise
Pour développer les règles de modele-social
et tester en temps réel sur les simulateurs de mon-entreprise, il vous faut lancer la commande suivantes :
yarn start
Les règles s'actualiseront automatiquement et le site se rechargera à chaque modification.
Tests
Pour tester les règles, il est recommandé de :
- faire tourner un simulateur et vérifier à la main l'adéquation des règles avec les normes traduites ;
- créer des cas de tests de non-régression sous la forme de nouveaux snapshots (cf.
site/test/regressions
).
Développement simultané de Publicodes et de mon-entreprise
Il est parfois utile de tester des évolutions de publicodes sur mon-entreprise. C'est possible de la manière suivante :
- cloner les deux dépôts
- sur le dépôt
publicodes
lancer unyarn build --watch
pour avoir du rechargement à chaud - sur le dépôt
mon-entreprise
lancer unyarn link ../publicodes --all
pour lier dynamiquement les paquetspublicodes
etpublicodes-react
La commande yarn link prend en paramètre un chemin relatif au dépôt courant, et fonctionne uniquement en local.
Pour revenir au paquet publié sur NPM il faut utiliser :
yarn unlink --all
Pour déployer une version preview de mon-entreprise utilisant une version de publicodes non publiée sur NPM il est possible de référencer un commit ou une branche dans l'attribut résolution du package.json
:
{
"publicodes": "betagouv/publicodes#head=refacto&workspace=publicodes",
"publicodes-react": "betagouv/publicodes#head=refacto&workspace=publicodes-react"
}