Skip to content

betagouv/aides-calculatrice-back

Repository files navigation

aides-calculatrice-back

Bienvenue sur le code source du dorsal d'aides-simplifiées. 🙂

Pré-requis

Ce dépôt nécessite le langage Python.
Si vous disposez déjà de logiciels dans ce langage, nous vous conseillons l'utilisation d'un gestionnaire de versions de Python tel que pyenv.

Les dépendances sont définies par le fichier pyproject.toml.
Celui-ci peut-être utilisé avec Poetry (documentation d'installation).

Quelle version de Python ?

Ce dépôt s'appuie sur des modèles de la législation open source. Le modèle Python appelé étant OpenFisca, ce dépôt choisira la version de Python la plus récente supportée par la librairie openfisca-france dont il dépend.

Dans le cas de l'usage de pyenv et de poetry, exécuter les commandes suivantes pour choisir la version de Python et la transmettre à l'environnement virtuel :

pyenv install 3.11
poetry env use python3.11

Il est alors possible de vérifier la version installée avec poetry run python --version.

Installation des dépendances pour l'API web

À la racine du dépôt, exécuter :

poetry install

Exécution de l'API web

Exécuter la commande suivante :

poetry run openfisca serve --country-package openfisca_france

L'API web est alors accessible localement sur http://127.0.0.1:5000.

Tester une requête à l'API web

Conserver l'API web active dans un terminal.
Dans un second terminal, interroger l'API web. Celle-ci dispose de plusieurs endpoints.
Pour tester une demande de calcul on transmettra une requête POST au format JSON à /calculate :

cd payloads/
curl -X POST http://127.0.0.1:5000/calculate -H 'Content-Type: application/json' -d @apl.json

On peut également employer une commande supplémentaire comme jq pour formater la réponse : curl -X POST http://127.0.0.1:5000/calculate -H 'Content-Type: application/json' -d @apl.json | jq

On s'attend à recevoir la réponse au format json. Pour en savoir plus sur /calculate, consulter sa documentation sur openfisca.org.

Installation des dépendances supplémentaires pour les notebooks d'explicabilité

À la racine du dépôt, exécuter :

poetry install --with explain

Exécution des notebooks en local

Pour exécuter avec Jupyter et dans un navigateur local un notebook tel que apl_logement_ordinaire.ipynb, exécuter la commande suivante à la racine du dépôt :

poetry run jupyter notebook ./notebooks/apl_logement_ordinaire.ipynb

About

Le dorsal d'aides-simplifiées

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published