Host your Docker images and private npm/PyPI packages. Pull from your own registry instead of a public one. Your private Artifact Registry without the Google Cloud dependency.
Every operation in Registry is available through a JSON REST API. No SDK required — use curl, fetch, or any HTTP client.
GET /api/entries — list all entries with optional search and filter query parametersPOST /api/entries — create a new entry recordGET /api/entries/{id} — retrieve a single entry by IDPUT /api/entries/{id} — update an existing entryDELETE /api/entries/{id} — remove a entryGET /api/stats — aggregated statistics with status breakdownGET /api/health — health check endpoint for monitoringMost entries tools fall into two camps: free products that harvest your data, or enterprise platforms that cost more than the problem they solve. Registry exists because neither option makes sense when you just need a reliable container and package registry under your own control.
Most entries tools fall into two camps: free products that harvest your data, or enterprise platforms that cost more than the problem they solve. Registry exists because neither option makes sense when you just need a reliable container and package registry under your own control.
Download the binary and run it. Registry starts serving immediately with a dashboard at localhost and a REST API for automation. No cloud account, no API keys to provision, no monthly invoice. Your data lives in a SQLite file you can back up, move, or query directly.
Install Registry with the one-line shell script or download the binary directly from GitHub. Run it, open /ui, and start creating entries. The SQLite database lives in a single file under the data directory. To migrate to a new server, copy the binary and the data directory. That is the entire migration procedure.
GET /api/entries — List all entries. Supports ?q=keyword for search and ?status=value for filteringPOST /api/entries — Create a new entry. Send JSON with at least nameGET /api/entries/{id} — Fetch one entry by IDPUT /api/entries/{id} — Update fields on an existing entryDELETE /api/entries/{id} — Remove a entryGET /api/stats — Returns total count and breakdown by statusGET /api/health — Returns {"status":"ok"} for uptime monitoringDownload the binary and run it. Registry starts serving immediately with a dashboard at localhost and a REST API for automation. No cloud account, no API keys to provision, no monthly invoice. Your data lives in a SQLite file you can back up, move, or query directly.
Install Registry with the one-line shell script or download the binary directly from GitHub. Run it, open /ui, and start creating entries. The SQLite database lives in a single file under the data directory. To migrate to a new server, copy the binary and the data directory. That is the entire migration procedure.
GET /api/entries — List all entries. Supports ?q=keyword for search and ?status=value for filteringPOST /api/entries — Create a new entry. Send JSON with at least nameGET /api/entries/{id} — Fetch one entry by IDPUT /api/entries/{id} — Update fields on an existing entryDELETE /api/entries/{id} — Remove a entryGET /api/stats — Returns total count and breakdown by statusGET /api/health — Returns {"status":"ok"} for uptime monitoringSelf-hosted container and package registry. Self-hosted on your infrastructure. Your data never leaves your server.
curl -fsSL https://stockyard.dev/install.sh | sh -s -- --tool registry
PORT=9220 ./registry
http://localhost:9220
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 REGISTRY_LICENSE_KEY=stockyard_xxxxxxxxxxxxxxxxxxxx ./registry
No cloud connectivity required. The binary validates the key offline with Ed25519 signatures.