Introducing Render Sandboxes: a computer for every agent.
Why deploy Fusion on Render?
Fusion is a lightweight, self-hosted RSS reader distributed as a single Go binary that combines a web UI, feed fetcher, and Fever API. It lets you read, group, bookmark, and search RSS/Atom feeds from a web interface or any Fever API client, with articles stored in a local SQLite database. This eliminates reliance on third-party RSS services by giving you full control over your feed data on your own infrastructure.
This template wires Fusion to a 1 GB persistent disk mounted at /data, pins the official GHCR image to a known version, auto-generates your FUSION_PASSWORD, and presets FUSION_DB_PATH, FUSION_PORT, and a health check on /api/oidc/enabled—so there's nothing to configure before clicking deploy. Instead of provisioning a host, attaching storage, managing the SQLite file path, and hand-setting env vars, Render stands up the web service and disk from render.yaml in one pass, with your login credential sitting ready on the Environment page. Upgrades stay a one-line tag change in the Blueprint followed by a push, and because the SQLite database lives on a Render disk rather than the container, your feeds, bookmarks, and read state survive every redeploy.
Architecture
What you can build
You'll have a private RSS reader running at your own URL, with feeds refreshing automatically every 30 minutes and all your subscriptions, read state, and bookmarks stored on a persistent disk. You can read and organize feeds in the web UI or connect a Fever-compatible client like Reeder or Unread, and import your existing subscriptions via OPML. Sign-in is protected by a generated password out of the box, so it's ready to use as soon as the service goes live.
Key features
- Pinned image deploys: Pulls the official Fusion image from GHCR at a pinned version (0x2e/fusion:1.3.0), with upgrades done by changing the tag in render.yaml.
- SQLite on persistent disk: Stores its database at /data/fusion.db on a 1 GB Render persistent disk so feeds and settings survive redeploys.
- Auto-generated credentials: Render uses generateValue to create FUSION_PASSWORD once on first Blueprint apply, so no manual secret setup is needed.
- Fever API compatibility: Exposes a Fever API endpoint at /fever so clients like Reeder, Unread, and FeedMe can connect using FUSION_PASSWORD.
- Configurable pull interval: Refreshes feeds on a schedule set by FUSION_PULL_INTERVAL in seconds, defaulting to 1800 (30 minutes).
Use cases
- Developer self-hosts an RSS reader after Google Reader-style service shutdowns
- Commuter reads feeds offline via Reeder through the Fever API
- Researcher groups and bookmarks industry blogs for weekly review
- Privacy-focused user migrates OPML feeds off ad-tracking readers
What's included
Service | Type | Purpose |
|---|---|---|
fusion | Web Service | Web UI, feed fetcher, and Fever API |
fusion-data | Persistent Disk | SQLite database at /data/fusion.db |
Next steps
- Open the service's Environment page, copy the generated FUSION_PASSWORD, then sign in at your fusion URL — The Fusion web UI loads and you land on an empty feed list, confirming the password and database are working
- Add a feed URL or import an OPML file from the web UI, then wait up to 30 minutes (or the FUSION_PULL_INTERVAL you set) — New articles appear under the feed, confirming the fetcher and the SQLite database at /data/fusion.db are persisting data
- Configure a Fever client (Reeder, Unread, or FeedMe) to point at https://
.onrender.com/fever with username 'fusion' and your FUSION_PASSWORD — The client syncs and shows the same feeds and articles you see in the web UI, confirming the Fever API endpoint is live
Resources
Repository
For AI agents
Drop into your coding agent to explore and deploy this template.