Pantry Lead Agent f70b90748a
Some checks failed
Pull Request Checks / Validate PR (pull_request) Has been cancelled
Deploy to Coolify / Run Tests (pull_request) Has been cancelled
Deploy to Coolify / Deploy to Development (pull_request) Has been cancelled
Deploy to Coolify / Deploy to Production (pull_request) Has been cancelled
Deploy to Coolify / Code Quality (pull_request) Has been cancelled
Deploy to Coolify / Deploy to Test (pull_request) Has been cancelled
feat: add SQL helper functions for inventory management (#15)
Created 8 helper functions for common inventory operations:

1. get_inventory_details() - Full inventory list with denormalized data
2. get_expiring_items(days) - Items expiring within N days
3. get_items_by_tag(tag_name) - Filter by tag
4. get_low_stock_items(threshold) - Items below quantity threshold
5. update_item_quantity() - Consume/restock with optional auto-delete
6. get_inventory_stats() - Dashboard statistics
7. search_inventory() - Full-text search across items and products

All functions include comments and are optimized for frontend queries.

Closes #15
2026-02-09 12:58:45 +00:00
2026-02-08 18:47:48 +00:00

Pantry 🍳

Self-hosted kitchen inventory management — family-friendly PWA with barcode scanning.

License: 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

# Clone
git clone https://gitea.jeanlucmakiola.de/pantry-app/pantry.git

# Start services (Docker Compose)
docker-compose up -d

# Access at http://localhost:3000

📚 Documentation

🛠️ 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

Target: v0.1 (6-week sprint)

See PROJECT_PLAN.md for detailed roadmap.

  • Foundation (Nuxt + Supabase + Auth)
  • Core inventory (CRUD, tags, units)
  • Barcode scanning (PWA camera + Open Food Facts)
  • Mobile polish (PWA, offline)
  • Docker deployment

🤝 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
Description
Self-hosted kitchen inventory management - PWA with barcode scanning
Readme 882 KiB
Languages
Markdown 100%