da4bd635db
- README: remove Recent Updates section, clean roadmap (pending only), replace Screenshots with demo link, add 6 new badges (stars, last commit, contributors, discussions, CI), invite GIF contributions - CHANGELOG: translate all Italian entries to English, add v1.7.13 (DB fresh-install crash fix) - database.php: add missing 'undone' column to transactions schema; wrap ALTER TABLE calls in try/catch to prevent race-condition errors on concurrent first requests - Wiki: Android-Kiosk v1.5.0 → v1.6.0, Step 5 rewritten (BLE scan, no external APK), removed gateway troubleshooting section - Wiki: Scale-Gateway promoted to deprecated with redirect banner - Wiki: Home What's New updated to v1.7.12 / v1.7.13 - Wiki: Features.md, kiosk README Italian UI strings translated - .github: add bug_report.yml, feature_request.yml issue templates, config.yml (blank issues off, links to FAQ/Discussions/Security), PULL_REQUEST_TEMPLATE.md with checklist - .github: FUNDING.yml (Ko-fi), dependabot.yml (monthly action updates) - .github/workflows/security.yml: Trivy docker + fs scan, SARIF upload - .github/workflows/build-scale-gateway.yml: disabled (deprecated) - SECURITY.md: responsible disclosure policy, supported versions, scope - CODE_OF_CONDUCT.md: Contributor Covenant 2.1 - Settings UI: About section with version display, Report Bug button, Changelog and GitHub links; reportBugManual() + _loadAboutSection() - Translations: added 'about' key group (9 keys × 3 languages)
3.9 KiB
3.9 KiB
🏠 EverShelf Wiki
Welcome to the EverShelf project wiki — your complete reference for installation, configuration, features, and development.
🚀 Try it now
▶ Live Demo — no installation, no login, full AI enabled
🌐 Project Website
📚 Wiki Contents
| Page | Description |
|---|---|
| Installation | Docker, manual setup, HTTPS, web server config |
| Configuration | .env reference — all options explained |
| Features | Complete feature documentation |
| API Reference | All REST endpoints, parameters, and responses |
| Android Kiosk | Tablet kiosk app setup and usage |
| Scale Gateway | BLE smart scale integration |
| Translations | Adding and editing language files |
| Contributing | Development workflow and PR process |
| FAQ & Troubleshooting | Common issues and solutions |
✨ What is EverShelf?
EverShelf is a self-hosted pantry management system that runs entirely on your own server. It:
- Tracks food inventory across multiple storage locations (pantry, fridge, freezer, custom)
- Scans barcodes and uses Google Gemini AI to identify products from photos
- Suggests recipes based on what's in your pantry — especially items about to expire
- Predicts what you'll need to buy before you run out
- Integrates with the Bring! shopping list app
- Supports a BLE smart scale for weight-based tracking
- Runs as a Progressive Web App installable on any device
- Optionally pairs with a dedicated Android kiosk tablet app
All data stays on your server. No cloud, no subscriptions.
🆕 What's New
v1.7.13 (2026-05-16)
- Critical fix: Fresh-install crash resolved —
transactionsschema was missing theundonecolumn, causing a database failure on every new installation - Fix: Race condition in DB migrations no longer causes
duplicate column nameerrors on concurrent first requests
v1.7.12 (2026-05-13)
- "Use first" banner now shows opening date and location instead of a confusing calculated expiry
- "Use All / Done" in recipes no longer deletes the inventory row — uses exact quantity instead
- Scan page fully redesigned: 2× zoom, torch, camera flip, 3 input tabs, AI Number OCR, recent products chips
- Anomaly detection: false positives eliminated (untracked direction removed, minimum 5 txn + 7-day span)
- AI price estimation for each Bring! shopping item with real-time dashboard total badge
- Kiosk v1.6.0: BLE scale gateway is now built-in — no separate APK needed
- Complete i18n: 934 keys per language
→ See the full CHANGELOG
📦 Repository Structure
EverShelf/
├── index.html # Single-page application entry point
├── manifest.json # PWA manifest
├── .env.example # Configuration template
├── api/
│ ├── index.php # Main API router
│ ├── database.php # SQLite schema + migrations
│ └── cron_smart_shopping.php # Background predictions job
├── assets/
│ ├── css/style.css
│ ├── js/app.js
│ └── img/
├── translations/ # i18n JSON files (it, en, de)
├── docs/openapi.yaml # OpenAPI 3.0 spec
├── evershelf-kiosk/ # Android kiosk app (Kotlin)
└── evershelf-scale-gateway/ # Android BLE gateway app (Kotlin)
📄 License
MIT — free to use, modify, and distribute. See LICENSE.
Author: Stimpfl Daniel — evershelfproject@gmail.com