Skip to content

Supporterino/FreezerTracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

71 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FreezerMan

Self-hosted freezer inventory tracking for your household.

Server Release Documentation License: GPL-3.0 Server Version Client Version

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.

Features

  • 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

Quick Start

# 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/health

Then download the client app from GitHub Releases, configure the server URL, and create your first household.

Documentation

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

Tech Stack

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

Project Structure

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)

Contributing

Contributions are welcome. See the Contributing Guide for development setup, code style, and the pull request process.

License

This project is licensed under the GNU General Public License v3.0.

About

Self-hosted freezer inventory tracker for households — organize items by freezer and compartment, track expiry dates, invite members via QR codes, and keep a full change history.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors