# Application Carb-Cycling - Papa In Shape Application web Django pour vous aider à planifier vos repas selon la méthode du carb-cycling. ## Fonctionnalités - 📅 **Tableau de bord hebdomadaire** : Visualisez et planifiez votre semaine - 🔄 **3 types de journées** : Pauvre, Normal, Riche en glucides - 🍽️ **Gestion des repas** : Planifiez vos repas (petit-déjeuner, déjeuner, collation, dîner) - 📊 **Recommandations personnalisées** : Selon le type de journée - 🥗 **Guide des aliments** : Liste complète des aliments avec portions standards - 📖 **Guide du carb-cycling** : Explications détaillées de la méthode ## La méthode Carb-Cycling Le carb-cycling consiste à alterner l'apport en glucides selon trois types de journées : ### 🔴 Jour Pauvre en glucides - Glucides : 0-1 apport - Protéines : 3-4 apports - Lipides : 3-4 apports - Légumes verts : Sans modération ### 🟡 Jour Normal - Glucides : 2-3 apports - Protéines : 3-4 apports - Lipides : 2-3 apports - Légumes verts : Sans modération ### 🟢 Jour Riche en glucides - Glucides : 4-5 apports - Protéines : 3-4 apports - Lipides : 1-2 apports - Légumes verts : Sans modération ## Installation ### Prérequis - Python 3.8 ou supérieur - pip (gestionnaire de paquets Python) ### Étapes d'installation 1. **Cloner ou télécharger le projet** ```bash cd carb_cycling_app ``` 2. **Créer un environnement virtuel (recommandé)** ```bash python -m venv venv # Sur Windows venv\Scripts\activate # Sur Mac/Linux source venv/bin/activate ``` 3. **Installer les dépendances** ```bash pip install -r requirements.txt ``` 4. **Initialiser la base de données** ```bash python manage.py makemigrations python manage.py migrate ``` 5. **Charger les aliments de référence** ```bash python manage.py load_aliments ``` 6. **Créer un super utilisateur (admin)** ```bash python manage.py createsuperuser ``` Suivez les instructions pour créer votre compte administrateur. 7. **Lancer le serveur de développement** ```bash python manage.py runserver ``` 8. **Accéder à l'application** Ouvrez votre navigateur et allez sur : http://127.0.0.1:8000 ## Utilisation ### Première utilisation 1. **Connectez-vous** avec le compte créé 2. **Accédez au tableau de bord** pour voir votre semaine 3. **Planifiez une journée** en cliquant sur "Planifier" pour un jour donné 4. **Choisissez le type** : Pauvre, Normal ou Riche en glucides 5. **Ajoutez des repas** (petit-déjeuner, déjeuner, collation, dîner) 6. **Composez vos repas** en ajoutant des aliments depuis le guide ### Navigation - **Accueil** : Présentation de la méthode - **Tableau de bord** : Vue hebdomadaire de vos journées - **Aliments** : Guide complet des aliments avec portions - **Guide** : Explications détaillées du carb-cycling ### Administration Accédez à l'interface d'administration sur : http://127.0.0.1:8000/admin Vous pouvez y gérer : - Les utilisateurs - Les aliments - Les journées et repas ## Mise à jour de l'application ### Ajouter de nouveaux aliments Vous pouvez ajouter des aliments via l'interface d'administration ou en modifiant le fichier : `nutrition/management/commands/load_aliments.py` Puis relancez la commande : ```bash python manage.py load_aliments ``` ### Personnaliser l'apparence Les templates se trouvent dans : `nutrition/templates/nutrition/` Les styles CSS sont dans le fichier : `nutrition/templates/nutrition/base.html` ## Structure du projet ``` carb_cycling_app/ ├── manage.py # Script de gestion Django ├── requirements.txt # Dépendances Python ├── carb_cycling/ # Configuration du projet │ ├── settings.py # Paramètres Django │ ├── urls.py # URLs principales │ └── wsgi.py # Configuration WSGI └── nutrition/ # Application principale ├── models.py # Modèles de données ├── views.py # Vues (logique) ├── forms.py # Formulaires ├── urls.py # URLs de l'app ├── admin.py # Interface d'administration ├── templates/ # Templates HTML │ └── nutrition/ │ ├── base.html # Template de base │ ├── index.html # Page d'accueil │ ├── tableau_de_bord.html │ ├── guide.html │ └── ... └── management/ # Commandes personnalisées └── commands/ └── load_aliments.py # Chargement des aliments ``` ## Dépannage ### La base de données n'est pas créée ```bash python manage.py makemigrations python manage.py migrate ``` ### Les aliments ne s'affichent pas ```bash python manage.py load_aliments ``` ### Erreur "Port already in use" Le port 8000 est peut-être déjà utilisé. Utilisez un autre port : ```bash python manage.py runserver 8001 ``` ### Réinitialiser la base de données ⚠️ Attention : cela supprime toutes vos données ! ```bash rm db.sqlite3 python manage.py migrate python manage.py createsuperuser python manage.py load_aliments ``` ## Sécurité ⚠️ **Important pour la production** : - Changez la `SECRET_KEY` dans `settings.py` - Mettez `DEBUG = False` - Configurez `ALLOWED_HOSTS` - Utilisez une vraie base de données (PostgreSQL, MySQL) - Configurez les fichiers statiques avec `collectstatic` ## Support Pour toute question ou problème : 1. Vérifiez la documentation Django : https://docs.djangoproject.com/ 2. Consultez le guide Papa In Shape original ## Licence Application inspirée de la méthode Papa In Shape. À usage personnel uniquement. ## Crédits - Méthode : Papa In Shape (Thomas & Pierre) - Framework : Django - Design : Bootstrap 5