nebino

Tableau de bord personnel

Une application web personnelle qui regroupe en un seul endroit l’agenda, le suivi nutritionnel, les recettes et le stock alimentaire.

Contexte et rôle

Projet personnel, conçu et développé seul, de l’API à l’interface. L’idée : centraliser dans une seule application des usages du quotidien habituellement répartis entre plusieurs outils.

Architecture

Interface webReact 18 + Zustand
APIFastAPI
PostgreSQLdonnées
Google Agendasynchronisation
CIQUAL175 aliments
Le tout est orchestré avec Docker Compose.

Le front React, dont l’état est géré avec Zustand, dialogue avec une API FastAPI adossée à PostgreSQL.

Fonctionnalités

Agenda
Synchronisation avec Google Agenda
Nutrition
Base nutritionnelle CIQUAL (175 aliments)
Recettes
Système de recettes
Stock
Scan de codes-barres pour alimenter le stock
Interface
Notifications toast

Choix techniques et difficultés

Stack
FastAPI pour l’API Python, React 18 et Zustand pour l’interface, PostgreSQL pour les données
Déploiement
Docker Compose : l’environnement se relance à l’identique
Google Agenda
La synchronisation a demandé de traiter les fuseaux horaires avec rigueur : un correctif dédié a été nécessaire

Preuves

Tests
Environ 208 tests automatisés
Couverture
Entre 71 et 74 % du code
CI/CD
GitHub Actions exécute la suite à chaque modification

Voir aussi : tous les projets, compétences