morgane e746c3d05b
CI / PHP Syntax Check (push) Has been cancelled
CI / JavaScript Lint (push) Has been cancelled
CI / Docker Build Test (push) Has been cancelled
CI / Validate Translation Files (push) Has been cancelled
CI / Auto-merge develop → main (push) Has been cancelled
CI / Create GitHub Release (push) Has been cancelled
Actualiser README.md
2026-06-18 06:49:37 +00:00
2026-06-17 21:38:04 +00:00
2026-06-18 06:31:37 +00:00
2026-06-17 08:07:28 +00:00
2026-06-17 07:57:39 +00:00
2026-06-17 21:39:07 +00:00
2026-04-10 05:24:27 +00:00
2026-06-18 06:49:37 +00:00

🏠 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.


License: MIT PHP SQLite Docker


Fonctionnalités principales

📦 Gestion des stocks

  • Inventaire alimentaire complet
  • Gestion des emplacements :
    • 🏠 Placard
    • ❄️ Réfrigérateur
    • 🧊 Congélateur
    • 📍 Emplacements personnalisés, entièrement gérés depuis une page 🔧 Configuration dédiée (ajout, modification, suppression sans toucher au code)
  • Sous-catégorie dédiée aux boissons (vin, bière, spiritueux, soda, jus, eau...) pour filtrer et trier l'inventaire plus précisément
  • 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 (CLI)

git clone https://git.mashome.fr/morgane/EverShelf.git
cd EverShelf
cp .env.example .env
nano .env
docker compose up -d

Puis ouvrez :

http://localhost:8080

🐳 Déploiement via Portainer

  1. Dans Portainer, va dans StacksAdd stack
  2. Donne un nom à la stack (ex : evershelf)
  3. Colle le contenu de ton docker-compose.yml dans l'éditeur web (ou utilise l'option Repository en pointant vers https://git.mashome.fr/morgane/EverShelf.git et le chemin du fichier compose)
  4. Renseigne tes variables d'environnement dans la section Environment variables (ou via un fichier .env à la racine du repo)
  5. Clique sur Deploy the stack

Pour mettre à jour après une modification de code :

  • Va dans Stacks → ta stack → Update the stack
  • Coche bien « Re-pull image » / « Re-build image » avant de valider — sinon Portainer redémarre le conteneur avec l'image déjà construite en cache, sans prendre en compte tes changements.

⚙️ Configuration

Exemple de fichier .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.

S
Description
EverShelf: Your pantry's best friend. A self-hosted, open source smart pantry manager with AI expiry tracking, barcode scanning, smart shopping lists, and Android Kiosk support.
Readme MIT 87 MiB
Languages
JavaScript 42.5%
PHP 33.8%
CSS 8.3%
Kotlin 8%
HTML 6.5%
Other 0.7%