Quick start
reader requires Node 22+ and pnpm.
git clone https://github.com/standardbeagle/reader.gitcd readerpnpm installpnpm -r buildRun the web app
Section titled “Run the web app”Two processes: the API server on port 3737 and the Vite dev server on 5173.
READER_PORT=3737 pnpm dev:server # terminal 1pnpm dev:web # terminal 2Open http://localhost:5173. The SPA proxies /api/* to the server.
Run the desktop app
Section titled “Run the desktop app”The Electron shell forks the server on 127.0.0.1 with a random port, so the
same codebase powers both. better-sqlite3 needs a one-time native rebuild
against Electron’s ABI — see apps/desktop/README.md — then:
pnpm --filter @reader/desktop devRun the tests
Section titled “Run the tests”pnpm -r testTests cover the core parser and sanitizer, the server API (including snooze and lists), and the web app’s URL, error, and grouping logic. Live API tests for platform ingestors (Bluesky, Reddit) run against the real services and are skipped when credentials are absent.
Subscribe to something
Section titled “Subscribe to something”Click + Add feed in the sidebar and paste any RSS/Atom URL — the server auto-discovers feeds behind common blog URLs. Articles appear within seconds of the initial fetch.