Log bottles, vintages, tasting notes, valuations. Vivino is a social network. This is a private inventory.
Every operation in Cellar is available through a JSON REST API. No SDK required — use curl, fetch, or any HTTP client.
GET /api/bottles — list all bottles with optional search and filter query parametersPOST /api/bottles — create a new bottle recordGET /api/bottles/{id} — retrieve a single bottle by IDPUT /api/bottles/{id} — update an existing bottleDELETE /api/bottles/{id} — remove a bottleGET /api/stats — aggregated statisticsGET /api/health — health check endpoint for monitoringThe moment you store bottles in someone else's cloud, you have accepted their terms, their pricing changes, and their uptime. Cellar puts that decision back in your hands with a standalone binary that runs anywhere you can run a Linux process.
A devops team integrates Cellar into their CI pipeline. A post-deploy hook creates a bottle record via the API. The stats endpoint feeds a Grafana panel. When something goes wrong, the team searches bottles by keyword to find related records without switching tools.
Each bottle record carries fields for name, type, vintage, region, producer. The API accepts partial updates, so you can PATCH individual fields without resubmitting the entire record. Listing endpoints support ?q= for keyword search and ?status= for filtering. Backups are a file copy of the SQLite database in the data directory.
GET /api/bottles — List all bottles. Supports ?q=keyword for searchPOST /api/bottles — Create a new bottle. Send JSON with at least nameGET /api/bottles/{id} — Fetch one bottle by IDPUT /api/bottles/{id} — Update fields on an existing bottleDELETE /api/bottles/{id} — Remove a bottleGET /api/stats — Returns total countGET /api/health — Returns {"status":"ok"} for uptime monitoringSelf-hosted wine and spirits inventory. Self-hosted on your infrastructure. Your data never leaves your server.
curl -fsSL https://stockyard.dev/install.sh | sh -s -- --tool cellar
PORT=10220 ./cellar
http://localhost:10220
Single binary. Embedded SQLite. No Docker. No database. No dependencies.
Your license key arrives by email within 5 minutes of checkout. Set it as an environment variable and restart the binary.
export CELLAR_LICENSE_KEY=stockyard_xxxxxxxxxxxxxxxxxxxx ./cellar
No cloud connectivity required. The binary validates the key offline with Ed25519 signatures.