Retour à l'accueil

KookIt

KookIt est un assistant culinaire intelligent conçu pour optimiser la gestion des repas et du foyer. L'application croise en temps réel l'inventaire du garde-manger avec un planificateur hebdomadaire pour proposer des recettes réalisables et générer automatiquement des listes de courses optimisées. Développé avec une architecture découplée (application mobile en Flutter et API REST avec Django Ninja), le projet se démarque par son modèle de données multi-utilisateurs permettant aux membres d'un même foyer de collaborer de manière parfaitement synchronisée.

Django Python Android Dart Flutter

KookIt : Application de Gestion Culinaire et de Foyer

KookIt est un assistant culinaire complet conçu pour optimiser la gestion quotidienne du foyer, réduire le gaspillage alimentaire et faciliter l'organisation des repas, particulièrement pour les sessions de batch cooking. Le projet repose sur une architecture découplée, intégrant une API REST backend performante et une application mobile fluide et réactive.

Présentation du Projet

L'objectif de KookIt est de centraliser et d'automatiser les tâches liées à l'alimentation d'un foyer. Contrairement à un simple carnet de recettes, l'application agit comme un gestionnaire intelligent capable de croiser les données d'un inventaire en temps réel avec un planificateur hebdomadaire, afin de générer des listes de courses optimisées et de suggérer des repas pertinents.

Fonctionnalités Clés

  • Algorithme de Suggestion et Faisabilité : Un moteur de recommandation analyse le stock actuel du garde-manger pour proposer des recettes, en attribuant à chacune un score de faisabilité (en pourcentage) et en isolant les ingrédients manquants.
  • Planificateur Hebdomadaire Dynamique : Une interface permettant d'organiser les repas de la semaine (petit-déjeuner, déjeuner, dîner) avec un système de recalcul automatique des portions.
  • Gestion Avancée de l'Inventaire : Suivi en temps réel des ingrédients et des dates de péremption, enrichi par un scan de codes-barres natif pour une mise à jour instantanée du stock au retour des courses.
  • Génération Intelligente de Liste de Courses : Un script backend croise les besoins anticipés par le planificateur hebdomadaire avec le stock actuel pour générer une liste d'achats précise et sans doublons.
  • Mode "Préparation Active" : Une interface de cuisine interactive intégrant le suivi des étapes, des minuteurs ajustables, et une déduction automatique (Bouton "J'ai cuisiné") des ingrédients utilisés directement depuis le garde-manger.
  • Architecture Multi-Utilisateurs (Household) : Un modèle de données spécifiquement conçu pour les foyers, permettant à plusieurs utilisateurs possédant des comptes distincts de partager et d'interagir avec le même garde-manger et le même planificateur en temps réel.

Stack Technique

Backend (API REST) : * Python / Django : Choisi pour sa robustesse et la puissance de son ORM. * Django Ninja : Intégration pour la création d'une API rapide, fortement typée et asynchrone. * Django Unfold : Mise en place d'un panel d'administration moderne basé sur Tailwind CSS. * Sécurité : Sécurisation des endpoints via une authentification par tokens JWT. * Optimisation : Implémentation d'un système de pagination sur les requêtes lourdes (catalogue, inventaire).

Frontend (Application Mobile) : * Flutter / Dart : Développement d'une interface multiplateforme réactive. * Provider : Architecture choisie pour une gestion d'état centralisée et prédictible. * Dio : Gestion des requêtes HTTP via une architecture Singleton et l'utilisation d'intercepteurs pour la gestion des tokens. * UX/UI : Intégration de l'Infinite Scroll pour le traitement des données paginées de l'API et du "swipe-to-delete" pour la gestion rapide de l'inventaire.


Journaux de développement