# Pantry 🍳 Self-hosted kitchen inventory management β€” family-friendly PWA with barcode scanning. [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) ## 🎯 Vision A simple, modern kitchen inventory app that the whole family can actually use. Born from frustration with existing tools: - **Grocy:** Powerful but overwhelming - **KitchenOwl:** Nice UI but lacks features **Pantry** bridges the gap β€” simple enough for daily use, powerful enough to be useful. ## ✨ Key Features (Planned) - πŸ“± **PWA** β€” Install on phone, works offline - πŸ“Έ **Barcode scanning** β€” Scan β†’ Add (3 taps) - 🏷️ **Tag-based organization** β€” Flexible categories (fridge, dairy, etc.) - πŸ“Š **Unit conversions** β€” kg ↔ g, L ↔ mL - πŸ‘₯ **Multi-user** β€” Shared inventory (no household complexity) - πŸ”’ **Self-hosted** β€” Your data stays yours - 🌐 **Open Food Facts** β€” Auto-fill product data from barcodes ## πŸš€ Quick Start (Local Development) ```bash # Clone repository git clone https://gitea.jeanlucmakiola.de/pantry-app/pantry.git cd pantry # One-command startup ./dev.sh ``` **What this does:** 1. Starts Supabase (PostgreSQL + API + Auth + Studio) 2. Installs frontend dependencies 3. Launches Nuxt dev server **Access:** - App: `http://localhost:3000` - Supabase Studio: `http://localhost:54323` **See [DEV_SETUP.md](DEV_SETUP.md) for detailed setup guide.** ## πŸ“š Documentation - **[Getting Started](docs/development/getting-started.md)** β€” First-time setup (5 minutes) - **[Local Setup Guide](docs/development/local-setup.md)** β€” Detailed Docker Compose setup - **[Project Plan](docs/PROJECT_PLAN.md)** β€” Vision, roadmap, MVP phases - **[Architecture](docs/architecture/overview.md)** β€” Tech stack, design decisions - **[Database Schema](docs/architecture/database.md)** β€” Tables, RLS policies, migrations - **[Development Workflow](docs/development/workflow.md)** β€” Git flow, conventions - **[Full Documentation Index](docs/README.md)** β€” Complete docs navigation ## πŸ› οΈ Tech Stack | Layer | Technology | |-------|------------| | Frontend | Nuxt 4 (Vue 3) | | Styling | Tailwind CSS + Nuxt UI | | Backend | Supabase (Postgres, Auth, Realtime) | | Barcode | html5-qrcode | | Runtime | Bun | | Deployment | Docker Compose | | External API | Open Food Facts | ## πŸ—‚οΈ Monorepo Structure ``` pantry/ β”œβ”€β”€ app/ # Nuxt 4 PWA β”œβ”€β”€ supabase/ # Database, migrations, functions β”œβ”€β”€ docker/ # Docker Compose, configs β”œβ”€β”€ docs/ # Documentation └── scripts/ # Utilities ``` ## 🎯 Principles 1. **Family-friendly** β€” If your parents can't use it, it's too complex 2. **Start simple** β€” Ship small, iterate fast 3. **Extendable** β€” Clean architecture for future features 4. **Self-hosted first** β€” No SaaS plans, no lock-in ## πŸ“‹ MVP Status (14/34 Complete - 41.2%) **Current Phase:** Week 2 βœ… Complete, Week 3 πŸ”„ In Progress βœ… **Week 1 - Foundation (6/6)** - Database schema + RLS policies - Nuxt 4 app scaffold - Supabase integration - App layout βœ… **Week 2 - Core Inventory (8/8)** - SQL helper functions - Seed data (units + tags) - Inventory CRUD UI - Add/Edit/Delete components πŸ”„ **Week 3 - Barcode Scanning (1/5)** - BarcodeScanner component - html5-qrcode integration - Product lookup (pending) - Scan-to-add flow (pending) ⏸️ **Week 4-6** - Tag UI, PWA, Deployment (20 issues) See [PROJECT_PLAN.md](docs/PROJECT_PLAN.md) for detailed roadmap. ## 🀝 Contributing This is an early-stage project. Contributions welcome once v0.1 ships. ## πŸ“„ License MIT Β© 2026 Jean-Luc Makiola ## πŸ™ Acknowledgments - Open Food Facts for product data - Supabase for the backend platform - Nuxt/Vue ecosystem