smart-garage

smart-garage

Docker app from Flizzy's Repository

Overview

Smart Garage β€” self-hosted vehicle management for Unraid. Maintenance, fuel analytics, expenses, documents, and reminders. One container, SQLite database, automatic updates via :latest image.
Smart Garage

Smart Garage

Your vehicles. Your data. Your NAS.

Self-hosted vehicle management for Unraid and homelab β€” maintenance, fuel, costs, and documents in one Docker container.

Release License: MIT GHCR

Install Β· Features Β· Updates Β· Changelog Β· Report issue


Why Smart Garage?

Most vehicle apps live in the cloud β€” your service history, receipts, and fuel data on someone else's server. Smart Garage runs entirely on your Unraid box or homelab: one container, one data folder, no subscription.

Built for people who want a clean garage dashboard without handing their data to a third party.

✨ Features

πŸš— Vehicles Profiles, photos, specs, manual entry, odometer quick-update, QR codes
πŸ”§ Maintenance Schedules, service log, overdue/due-soon dashboard
πŸ›‘οΈ TÜV / HU & AU Inspection due dates with reminders
β›½ Fuel Quick fill-up, consumption analytics, projected annual usage, charts
πŸ’Ά Expenses & costs Track costs, monthly overview dashboard, category breakdown
πŸ“‹ Insurance Policies, SF class, premiums, renewal tracking
πŸ“„ Documents Store invoices and PDFs per vehicle
πŸ”” Reminders Maintenance, TÜV, and overdue items at a glance
πŸ‘¨β€πŸ‘©β€πŸ‘§ Family garage Share vehicles with other users (view or edit)
πŸ“ Wishlist Planned purchases and dream cars
πŸ’Ύ Export JSON backup and CSV export from the UI
🎨 Personal Dark/light mode, 6 design presets, custom background with adjustable blur
🌍 Languages English & German
πŸ‘€ Multi-user Open local registration, per-user data + sharing
πŸ“¦ Simple ops Single Docker image, SQLite on /data, no extra database container

πŸ–₯️ Install

Unraid β€” Community Applications

Smart Garage is available in the Unraid Community Applications store. No docker compose required.

  1. Open the Apps tab (Community Applications must be installed).
  2. Search for Smart Garage.
  3. Click Install and review the template settings:
    • Web UI port β€” default 3000 (change if that port is in use)
    • AppData β€” default /mnt/user/appdata/smart-garage (database + uploads; created automatically)
    • Upload limits β€” optional, defaults are fine for most users
  4. Click Apply, then open the WebUI (or http://<unraid-ip>:<port>/).
  5. Register your account (first user becomes admin) and add your first vehicle.

Updates: Docker β†’ smart-garage β†’ Force Update (pulls ghcr.io/flizzy27/smart-garage:latest).

More detail: docs/UNRAID.md

Docker β€” Linux, NAS, homelab (no Unraid)

Use the pre-built image from GitHub Container Registry. You need a persistent volume mounted at /data inside the container.

docker run:

docker run -d \
  --name smart-garage \
  --restart unless-stopped \
  -p 3000:3000 \
  -v smart-garage-data:/data \
  -e DATABASE_URL=file:/data/smart-garage.db \
  -e UPLOAD_DIR=/data/uploads \
  -e MAX_UPLOAD_SIZE_MB=25 \
  -e MAX_IMAGE_SIZE_MB=10 \
  ghcr.io/flizzy27/smart-garage:latest

Open http://localhost:3000/ (or your host IP), register, and add a vehicle.

Docker Compose (optional):

docker compose up -d

Uses the same image and a named volume β€” see docker-compose.yml.

Image: ghcr.io/flizzy27/smart-garage:latest

Full ops guide: docs/INSTALL.md

Updates

Channel Image tag When updated
Stable (default) ghcr.io/flizzy27/smart-garage:latest Version release tags only (v0.4.0, …) β€” CI must pass first
Development ghcr.io/flizzy27/smart-garage:development Every push to main after CI passes
Platform Stable update Dev preview
Unraid Docker β†’ Force Update (uses :latest) Change repository tag to :development in container settings
Docker docker pull ghcr.io/flizzy27/smart-garage:latest docker pull ghcr.io/flizzy27/smart-garage:development

Promote to stable: when a dev build is approved, tag a release (git tag v0.4.2 && git push origin v0.4.2). That publishes :latest.

Pin a version: ghcr.io/flizzy27/smart-garage:v0.4.0

πŸ’Ύ Backup

In-app export: Settings β†’ Data & export β€” download JSON (full backup) or CSV (expenses).

Manual backup β€” archive your AppData / volume:

/data/
β”œβ”€β”€ smart-garage.db    # all app data
└── uploads/           # images & documents

On Unraid: /mnt/user/appdata/smart-garage

πŸ“š Documentation

Doc Description
docs/UNRAID.md Unraid install & troubleshooting
docs/INSTALL.md Backup, restore, updates
docs/CA-SUBMISSION.md Community Applications submission packet
CHANGELOG.md Release history
SECURITY.md Security policy

πŸ—οΈ Tech

Next.js 16 Β· React 19 Β· SQLite Β· Prisma Β· Tailwind CSS 4 Β· next-intl

Single standalone Docker image (~production-ready for homelab scale).

πŸ“„ License

MIT β€” Copyright (c) 2026 flizzy27


Made for homelab & Unraid Β· No cloud required

Install smart-garage on Unraid in a few clicks.

Find smart-garage in Community Apps on your Unraid server, review the template, and click Install. Unraid handles the Docker app or plugin setup from the published template.

Open the Apps tab on your Unraid server Search Community Apps for smart-garage Review the template variables and paths Click Install

Related apps

Explore more like this

Explore all

Details

Repository
ghcr.io/flizzy27/smart-garage:latest
Last Updated2026-07-07
First Seen2026-06-20

Runtime arguments

Web UI
http://[IP]:[PORT:3000]/
Network
bridge
Shell
sh
Privileged
false

Template configuration

Web UIPorttcp

Web interface port.

Target
3000
Default
3000
Value
3000
AppDataPathrw

SQLite database and uploads. Created automatically by Unraid.

Target
/data
Default
/mnt/user/appdata/smart-garage
Value
/mnt/user/appdata/smart-garage
Max upload size (MB)Variable

Maximum document upload size (PDF, receipts).

Target
MAX_UPLOAD_SIZE_MB
Default
25
Value
25
Max image size (MB)Variable

Maximum vehicle image upload size.

Target
MAX_IMAGE_SIZE_MB
Default
10
Value
10
Database URLVariable
Target
DATABASE_URL
Default
file:/data/smart-garage.db
Value
file:/data/smart-garage.db
Upload directoryVariable
Target
UPLOAD_DIR
Default
/data/uploads
Value
/data/uploads
Node environmentVariable
Target
NODE_ENV
Default
production
Value
production