🏠 EverShelf
«Gestionnaire de garde-manger auto-hébergé — Suivez vos stocks alimentaires, scannez vos produits, recevez des suggestions de recettes avec l’IA et réduisez le gaspillage.»
Fork amélioré du projet original EverShelf avec corrections, améliorations d’ergonomie, intégrations supplémentaires et optimisations.
"▶ Tester la démo" (https://evershelfproject.dadaloop.it/demo) · "🌐 Site du projet" (https://evershelfproject.dadaloop.it/) · "📖 Documentation" (https://github.com/dadaloop82/EverShelf/wiki)
La démo utilise des données fictives. Les fonctions IA sont activées. Les modifications sont isolées.
""License: MIT" (https://img.shields.io/badge/License-MIT-green.svg)" (LICENSE) ""PHP" (https://img.shields.io/badge/PHP-8.0+-blue.svg)" (https://www.php.net/) ""SQLite" (https://img.shields.io/badge/SQLite-3-blue.svg)" (https://www.sqlite.org/) ""Docker" (https://img.shields.io/badge/Docker-Compatible-2496ED.svg)" (Dockerfile)
✨ Fonctionnalités principales
📦 Gestion des stocks
- Inventaire alimentaire complet
- Gestion des emplacements :
- 🏠 Placard
- ❄️ Réfrigérateur
- 🧊 Congélateur
- 📍 Emplacements personnalisés
- Scan de codes-barres avec la caméra du téléphone
- Ajout rapide de produits
- Suivi des dates de péremption
- Gestion des produits ouverts
- Support des produits sous vide
- Détection des incohérences de stock
🤖 Intelligence artificielle (Google Gemini)
EverShelf peut utiliser l’IA pour :
- 📸 Identifier un produit depuis une photo
- 📅 Lire automatiquement une date limite de consommation
- 🧊 Proposer un stockage adapté
- 🍳 Générer des recettes selon votre inventaire
- 💬 Répondre aux questions sur vos produits
- 🛒 Améliorer les suggestions de courses
«L’IA est optionnelle. EverShelf fonctionne sans clé Gemini.»
🛒 Liste de courses intelligente
- Création automatique depuis les ruptures de stock
- Prévisions de besoins
- Synchronisation avec Bring!
- Nettoyage automatique des doublons
- Suggestions d’achat personnalisées
🍳 Mode cuisine
- Recettes étape par étape
- Mode mains libres
- Synthèse vocale (TTS)
- Minuteurs automatiques
- Suivi des ingrédients utilisés
- Conseils anti-gaspillage
♻️ Réduction du gaspillage
- Suivi des aliments consommés ou jetés
- Analyse des pertes
- Alertes de péremption
- Suggestions pour utiliser les produits bientôt périmés
🏡 Intégrations
Home Assistant
Intégration native disponible :
- Capteurs de stock
- Dates de péremption
- Liste de courses
- Calendrier des produits
- Actions personnalisées
- Suggestions de recettes IA
Compatible avec une installation 100% locale.
📱 Application mobile / PWA
- Interface adaptée smartphone
- Installation comme une application
- Synchronisation multi-appareils
- Mode hors-ligne :
- consultation du stock
- actions mises en attente
- synchronisation automatique au retour réseau
📺 Mode tablette (Kiosque Android)
- Affichage plein écran
- Verrouillage kiosque
- Scan caméra
- Support TTS natif Android
- Découverte automatique du serveur
- Support des balances Bluetooth
🚀 Installation rapide
Prérequis
- PHP 8.0+
- SQLite 3
- Extensions PHP :
- "pdo_sqlite"
- "curl"
- "mbstring"
- "json"
Docker est recommandé.
🐳 Installation Docker
git clone https://git.mashome.fr/morgane/EverShelf.git
cd EverShelf
cp .env.example .env
nano .env
docker compose up -d
Puis ouvrez :
⚙️ Configuration
Exemple ".env" :
IA Google Gemini (optionnel)
GEMINI_API_KEY=votre_cle
Bring! (optionnel)
BRING_EMAIL=email@example.com BRING_PASSWORD=motdepasse
Sécurité API
API_TOKEN=
Nettoyage automatique
RECIPE_RETENTION_DAYS=7 TRANSACTION_RETENTION_DAYS=90
🔒 Vie privée
EverShelf est conçu pour fonctionner en auto-hébergement :
- Pas de compte obligatoire
- Pas de cloud imposé
- Données stockées localement
- SQLite comme base de données
- Les fonctions IA utilisent uniquement les services configurés par l’utilisateur
🛠️ Développement
Technologies principales :
- PHP
- SQLite
- JavaScript
- HTML/CSS
- Docker
📜 Licence
Projet sous licence MIT.
🙏 Crédits
Projet original :
https://github.com/dadaloop82/EverShelf
Ce dépôt est un fork indépendant contenant des améliorations et adaptations personnelles.