Railway

Deploy Trug

Trug is a self-hosted shared shopping list for one household.

Deploy Trug

Just deployed

/data

Deploy and Host Trug with Railway

Trug is a self-hosted shared shopping list for one household. Everyone gets the list on their phone as an installable PWA that works with no signal in the shop and syncs when it's back. Sign-in is passkeys only — no passwords, no accounts to manage. Assistants like Claude can read and edit the list over MCP. Open source, MIT-licensed, and small enough to understand end to end.

About Hosting Trug

Trug is a single container: a FastAPI server, a SQLite database, and the compiled web app in one image, with no external services to wire up. Railway attaches a volume at /data where the database lives, so your list survives redeploys and restarts. Deploying from this template generates all three access tokens for you and pins them into the service's Variables tab — there are no logs to grep — and resolves the passkey settings automatically from your generated domain, which is the one piece of configuration that is fiddly to get right by hand. It runs comfortably inside the Hobby plan's included $5 of monthly usage. The volume is your data: Railway's volume backups cover it, and there's a restore guide in the repo.

Common Use Cases

  • A household shopping list that everyone has on their phone, grouped into aisles in the order you actually walk the shop, and usable offline mid-aisle.
  • Voice capture from a smart ring or Home Assistant — a webhook endpoint turns "milk, eggs and bread" into three items without anyone unlocking a phone.
  • Adding things via Claude or any MCP client — "add what I need for a carbonara" fills the list, iconed and sorted, over a linked connector.
  • An open-source escape from Google Keep, Bring! or AnyList for people who would rather their shopping habits stayed on hardware they control.

Dependencies for Trug Hosting

  • FastAPI and SQLite (bundled in the image — nothing to provision)
  • A Railway volume mounted at /data for the database
  • Optional: an API key for any OpenAI-compatible LLM, used only to guess item icons and aisles. Trug is fully functional without one — a built-in icon map covers the common groceries.

Deployment Dependencies

Why Deploy Trug on Railway?

Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.

By deploying Trug on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.


Template Content

More templates in this category

View Template
Rocky Linux
[Jul'26] Hosted Rocky Linux 9 workspace with SSH and persistent storage. 🚀

codestorm
38
View Template
Foundry Virtual Tabletop
A Self-Hosted & Modern Roleplaying Platform

Lucas
71
View Template
Letta Code Remote
Run a Letta Code agent 24/7. No inbound ports, just deploy.

Letta
51