Requirements
What you need before installing: hardware, Docker, ports, an LLM and optionally email
Hardware
| Requirement | Detail |
|---|---|
| Machine | Any small box or VPS you already have, including a Raspberry Pi |
| Architecture | The published image is multi-arch: linux/amd64 and linux/arm64 |
| Memory | No minimum is published. The three containers are light; Postgres is the largest of them |
| Disk | Small. Article text is cleared after 30 days by default, so the database does not keep growing with full bodies |
Software
| Requirement | Detail |
|---|---|
| Docker | Docker Engine with the Compose plugin (docker compose, v2) |
| Node.js | Only when running from source or running scripts on the host: Node 22 or newer. The image uses Node 24 |
Network and ports
| Port | Service | Exposure |
|---|---|---|
3000 | app | Published on the host; this is the web UI and API |
5432 | postgres | Bound to 127.0.0.1 only, for host tooling such as pnpm migrate. Not reachable from outside |
The app has no built-in authentication: it is single-user and ships without a login. Do not
expose port 3000 directly to the internet. Put it behind a reverse proxy with authentication
(nginx, Caddy or Traefik with basic auth or your SSO), or keep it on a private network or VPN such
as Tailscale. When you do put it behind a proxy, set SITE_URL or ALLOWED_HOSTS; see
Configuration.
An LLM
Summaries and digests are written by a language model. Pick one of three:
| Option | What you need | Cost |
|---|---|---|
| Anthropic (default) | An API key with API credits. A Claude subscription does not count | A few cents a week at the default models |
| OpenAI | An API key | Similar |
| Ollama or another local server | The server running on the Docker host, with models pulled | Nothing |
Details per provider, including which models to pick, are on LLM providers.
Optional: email
Without email the digest is still readable in the app. To have it mailed, you need either a Resend API key (their free plan fits) or any SMTP server, such as your mail provider or a local relay. See Configuration.