Carvey

Carvey

Docker app from Larv's Repository

Overview

Carvey is a self-hosted, local-first car maintenance tracker for managing vehicles, repairs, maintenance, MOTs, reminders and costs.

Carvey Logo

Carvey is a self-hosted, local-first car maintenance tracker for managing vehicles, repairs, maintenance, MOTs, reminders and running costs. Your "digital service history" for your older cars, or your digital backup of all that paperwork you've got stuffed in a slippery fish.

Screenshots

Carvey App

What It Does

  • Tracks multiple vehicles in one garage
  • Stores vehicle details, odometer readings, and notes
  • Logs maintenance, repairs, MOTs/emissions tests, and reminders
  • Attaches receipts and documents (PDF, images) to any record
  • Shows a dashboard with costs, reminders, and upcoming tests
  • Configurable regional settings for currency, distance, dates, and more
  • Backup & restore your config / data

Regional Settings

Carvey is configurable for different regions under Settings → Regional. All options default to UK values.

Setting Options
Currency GBP (£) · USD ($) · EUR (€)
Distance unit Miles · Kilometres (km)
Date format DD Mon YYYY · ISO 8601 (YYYY-MM-DD)
Plate colour Yellow (rear) · White (front)
Annual vehicle test MOT · Emissions Test · Disabled

How It Works

  • Built as a Next.js app with a server-rendered UI
  • Stores data in SQLite under /app/data
  • Saves uploaded vehicle images and file attachments alongside the database
  • Packages the database and uploads together for backup and restore
  • Authentication can be disabled for deployments behind a trusted reverse proxy

Quick Start

Local development:

npm install
npm run dev

Open http://localhost:3000.

On first run, create your admin account in the setup screen.

Example local env:

CARVEY_DATA_DIR=./data
TZ=Europe/London

Docker Compose:

docker compose up -d --build

Then open http://localhost:3000.

Password Reset

If you're locked out and can't use the Settings → Admin → Password form, there are two ways to reset the admin password.

Option 1 — CLI (no restart needed):

docker exec -it <container-name> node scripts/reset-password.mjs

You'll be prompted to enter and confirm a new password.

Option 2 — Environment variable (Docker Compose):

Add CARVEY_RESET_PASSWORD=yournewpassword to your Docker Compose environment, restart the container, log in with the new password, then remove the variable and restart again.

Tech Stack

  • Next.js
  • React
  • TypeScript
  • SQLite via better-sqlite3
  • Sharp for image processing
  • Vitest for tests

Issues and Feedback

Please raise issues / bugs in the issues tab. Any feedback about features you'd like to see, raise here

Install Carvey on Unraid in a few clicks.

Find Carvey 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 Carvey Review the template variables and paths Click Install

Related apps

Explore more like this

Explore all

Details

Repository
ghcr.io/revise0592/carvey:latest
Last Updated2026-07-17
First Seen2026-05-06

Runtime arguments

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

Template configuration

App dataPathrw
Target
/app/data
Value
/mnt/user/appdata/carvey
Host Port 1Porttcp
Target
3000
Value
3000
TZVariable
Value
Europe/London