Ce projet est une API REST développée avec Flask.
Elle permet de gérer les résidents d'une ville et de distribuer des cadeaux aux nouveaux arrivants célébrant leur première année dans la commune.
L’application :
- Sélectionne les habitants éligibles (installés depuis plus d’un an).
- Trouve le cadeau approprié selon leur tranche d’âge.
- Stocke les données en mémoire à l’aide de listes Python.
server.py→ Code Python du serveur Flaskindex.html→ Interface HTML/JS de testREADME.md→ Ce fichier de documentation
- Python 3.x installé sur votre machine.
Installez Flask avec la commande :
pip install flaskExécutez le fichier Python principal :
python server.pyL’API sera accessible à l’adresse :
👉 http://127.0.0.1:5050
Vous pouvez tester les routes avec cURL, Postman ou directement via l’interface web (index.html).
Lister tous les habitants :
curl -X GET http://127.0.0.1:5050/api/v1/residentsAjouter un habitant :
curl -X POST -H "Content-Type: application/json" -d '{"id": 6, "prenom": "Alice", "age": 35, "date_arrivee": "2025-01-01"}' http://127.0.0.1:5050/api/v1/residents| Méthode | Endpoint | Description |
|---|---|---|
| GET | /api/v1/residents |
Liste de tous les habitants |
| GET | /api/v1/residents/<id> |
Détails d’un habitant |
| POST | /api/v1/residents |
Ajoute un nouvel habitant |
| PUT | /api/v1/residents/<id> |
Modifie un habitant |
| DELETE | /api/v1/residents/<id> |
Supprime un habitant |
| Méthode | Endpoint | Description |
|---|---|---|
| GET | /api/v1/eligible |
Liste des habitants éligibles et cadeaux correspondants |
| POST | /api/v1/attributions |
Génère les attributions de cadeaux du jour (aléatoirement) |
Un résident est éligible s’il a emménagé depuis plus de 365 jours.
- Chaque cadeau correspond à une tranche d’âge (
age_min,age_max). - Lors de la création des attributions, un cadeau aléatoire est choisi parmi ceux disponibles pour le résident.
- Un résident ne peut recevoir qu’un seul cadeau.