-
Notifications
You must be signed in to change notification settings - Fork 1
Choix d'implémentation
Pour ce projet, l'équipe a décidé de mettre en place une API qui communiquera à qui le demande les données publiques récoltées.
Les données seront récoltées depuis des sources officielles et sures. Exemple : https://inseed.tg/.
Les données publiques sont statiques et ne seront accessibles depuis l'API qu'en lecture; les données évolutives (Exemple : population) peuvent aussi être considérées comme statiques par périodes (Exemple : population d'après le recensement de l'année 2022). Ainsi, nous avons jugé que le projet ne nécessite pas de SGBD.
Utiliser un SGBD demanderait d'ajouter les données par seeding ou de construire une interface d'ajout de données au clavier, ce qui dans notre cas s'avèrerait inutilement lent. Aussi, il nous faut un moyen rapide de contribution aux données; un moyen par lequel les modifications seront aussi flexibles que la contribution au code source.
Nous avons donc décidé que les données soient répertoriées dans des fichiers JSONs organisés dans les dossiers.
Pourquoi des fichiers JSON?
Le format JSON est flexible, supporté par plusieurs languages et c'est le format le plus utilisé dans les échanges par API. Ce format est aussi facilement lisible par l'humain, ce qui va faciliter la contribution.
L'API sera construit sous python avec FastAPI d'une part parce qu'il est facile à prendre en main, rapide à l'implémentation et d'autre part parce que les membres du groupe 4 du Hacktoberfest 2023 (ce groupe ci) sont tous plus à l'aise avec cette technologie.