Opensource Selfhosted Groceries Inventory Manager
- JavaScript 51.4%
- Python 38.3%
- CSS 9.4%
- Dockerfile 0.6%
- HTML 0.3%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| backend | ||
| docs | ||
| frontend | ||
| .dockerignore | ||
| .gitignore | ||
| docker-compose.yml | ||
| LICENSE | ||
| README.md | ||
Fridge
Selfhosted, open-source Groceries Inventory Manager — track what you buy, when it expires, what you need to eat now, and what is actually hiding in the back of a drawer.
Think Grocy, but way lighter: one SQLite file, one container, a calm UI, and an API your AI agent can actually use — plan the week's meals from what needs to be eaten, or build your own clients.
Features
- Inventory — stock entries with quantity, location, purchase date and expiry (auto-computed from per-product
default_expiry_days). - Eat-now dashboard — already expired on top, then what must be eaten soon, sorted by urgency.
- Shopping list — product-linked or freeform lines, check off, then one-shot checkout into inventory.
- Locations — Fridge / Freezer / Pantry / Drawer seeded on first run; add your own (cellar, spice rack…).
- Agent-friendly API — clean REST, OpenAPI at
/api/docs, plus a single-shotGET /api/agent/summarymade for AI agents. Full contract:docs/API.md— design decisions:docs/DESIGN.md.
Screenshots
Dark by default (light theme toggles in Settings):
| Dashboard | Inventory |
|---|---|
![]() |
![]() |
Quickstart (selfhost)
docker compose up -d # → http://localhost:8000
The SQLite database lives in a named volume (fridge-data). No accounts: this is a LAN tool — don't expose it raw to the internet (or proxy it with auth).
Dev setup
# backend (API on :8000, docs at /api/docs)
cd backend
python3 -m venv .venv && . .venv/bin/activate
pip install -r requirements.txt -r requirements-dev.txt
uvicorn app.main:app --reload
pytest
# frontend (Vite dev server on :5173, proxies /api → :8000)
cd frontend
npm install
npm run dev
# production build (served by the API)
npm run build
Project layout
backend/ FastAPI app (SQLite, SQLAlchemy) — app/, tests/
frontend/ React + Vite SPA — src/
docs/ DESIGN.md, API.md (frozen contract)
License
MIT — see LICENSE.

