Skip to content

rpressiani/freezo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Freezo

A simple, self-hosted application to track food inventory in your freezers. Built with Go, React, and SQLite, designed for homelab environments.

Freezo Screenshot

📚 View the Instructions Guide & user manual here!

Architecture

  • Backend: Go (Golang) with Chi router and SQLite database.
  • Frontend: React (Vite).
  • Deployment: Kubernetes via Helm Chart.

Prerequisites

  • Go 1.25+
  • Node.js 22+
  • Docker
  • Kubernetes Cluster (e.g., k3s, minikube)
  • Helm

Local Development

Local Development (Source)

You can run the backend and frontend in separate terminals:

Terminal 1 (Backend):

make run-backend

Terminal 2 (Frontend):

make run-frontend

Release Process

Application Release

To release a new version of the application (Frontend + Backend):

  1. Tag the release:
    git tag v0.1.0
    git push origin v0.1.0
    This triggers the release.yml workflow which builds and pushes the Docker images.

Helm Chart Release

To release a new version of the Helm chart:

  1. Update Config: Bump the version in charts/freezo/Chart.yaml.
  2. Push: Commit and push the change to main. This triggers the chart-release.yml workflow which packages and releases the chart to GitHub Pages.

Deployment on Kubernetes

helm repo add freezo https://rpressiani.github.io/freezo
helm install freezo freezo/freezo

Features

  • Manage multiple Freezers/Locations.
  • Track Items with quantity and expiry dates.
  • Responsive UI for Desktop and Mobile.

This project was vibe coded with Google Antigravity and Gemini 3 Pro.

About

A self-hosted freezer inventory system. Features a Go backend, React frontend, SQLite (w/ native backups), and a ready-to-deploy Helm chart.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors