Self-hosted freezer inventory tracking for your household.
FreezerMan helps households keep track of what's stored in their freezers. Organize items by freezer and compartment, track expiry dates, invite household members via QR codes, and maintain a full change history -- all self-hosted, no cloud required.
- Multi-household -- create and manage multiple households with owner/member roles
- Freezer organization -- structure freezers with named compartments (drawers, shelves, etc.)
- Item tracking -- add items with quantity, notes, storage date, and optional expiry date
- Expiry alerts -- color-coded expiry status (ok, soon, imminent, expired)
- QR invites -- generate QR codes to invite household members without email
- Change history -- per-field audit trail on every item edit
- Soft-delete archive -- deleted items go to an archive before permanent removal
- Cross-platform -- native macOS desktop and iOS mobile apps via Tauri v2
# Clone the repository
git clone https://github.com/Supporterino/FreezerTracker.git
cd FreezerTracker
# Configure the server
cp apps/server/.env.example apps/server/.env
# Edit .env: set DATABASE_URL, JWT_SECRET, JWT_REFRESH_SECRET
# Start the server and database
docker compose up -d
# Verify it's running
curl http://localhost:3000/api/v1/healthThen download the client app from GitHub Releases, configure the server URL, and create your first household.
Full documentation is available at supporterino.github.io/FreezerTracker.
| Section | Description |
|---|---|
| Getting Started | Installation and setup |
| User Guide | Feature walkthroughs |
| API Reference | REST API documentation |
| Deployment | Docker, Kubernetes, reverse proxy |
| Contributing | Development setup and guidelines |
| Layer | Technologies |
|---|---|
| Server | NestJS 11 · Prisma 7 · PostgreSQL 17 · Bun |
| Client | Tauri v2 · React 19 · Mantine 9 · TanStack Router & Query |
| Shared | TypeScript 6 · Zod 3 |
| Infra | Docker · Helm · GitHub Actions |
freezer-tracker/
├── apps/
│ ├── client/ # Tauri v2 desktop/mobile app
│ └── server/ # NestJS REST API
├── packages/
│ └── shared/ # Shared TypeScript types & Zod schemas
├── helm/ # Kubernetes Helm chart
├── scripts/ # Release automation
└── docs/ # Documentation source (Zensical)
Contributions are welcome. See the Contributing Guide for development setup, code style, and the pull request process.
This project is licensed under the GNU General Public License v3.0.