ReadingIn development

R3ader

Read the web on your terms.

Role
Founder. Design and build.
Team
Solo
Timeline
2026
Stack
React PWA (Vite), Tauri desktop for macOS, Windows and Linux, React Native with Expo for iOS and Android, IndexedDB offline-first, optional Supabase sync, an MCP server
Year
2026
Site
Coming soon
Local-first
by default; an account is optional and only for sync
Design rule
3 platforms
web, desktop and mobile from one web core plus one Expo codebase
Architecture fact

The problem

Feed readers either died with Google Reader or turned into engagement machines. People who follow sites they trust want unread triage, stars, full-text search and keyboard speed, on every device, without being made to create an account.

Key decisions

Constraint

Privacy is the reason to choose a reader over a feed.

Options

Cloud accounts first, or local storage first.

Decision

Offline-first with IndexedDB. Sync through Supabase exists only once you sign in, and the reading history never leaves the device otherwise.

Trade-off

Sync is harder to build on top of local-first than the other way around.

Constraint

One person maintaining web, desktop, iOS and Android.

Options

Native apps everywhere, or share as much as possible.

Decision

The desktop app is a Tauri shell around the same web app; iOS and Android share one Expo codebase with the same tabs, feeds, sync and settings.

Trade-off

Some native niceties are skipped. Features ship to every platform at once.

Constraint

Power users judge a reader by how fast it moves.

Options

Mouse-first with shortcuts bolted on, or keyboard-first.

Decision

Keyboard-first: command palette, j/k between articles, one-key star, unread and original.

Trade-off

A short learning curve, covered by the first-run tips.

The work

R3ader landing page: read the web on your terms
Landing pageOpen feed standards, keyboard-first, installable, with optional sync.
R3ader three-pane reader with an AI summary under the article
ReaderSources and smart views, the timeline, and the article, with an AI summary underneath.
R3ader settings for sync, theme, density, font size and line height
SettingsWhat syncs to the cloud, theme, list density, font size and line height, with a live preview.

How it was built

  1. 01DiscoverCalls and walk-throughs with the people who would use it
  2. 02CompileTranscripts, files and constraints in one requirements brief
  3. 03SpecifyA detailed, sourced spec from Perplexity, reviewed and locked
  4. 04BuildDesigned and built with the latest AI models, in the production stack
  5. 05TestUser testing on every preview, with real users on real tasks
  6. 06IterateFindings turned into the next round of changes, worst problems first
  7. 07ShipTests, security review and release, then back to testing and iterating↻ Back to Test
How I work, step by step →

Where AI was used

Each article opens with a short AI summary from Perplexity, generated on the server so the API key never reaches the browser. An MCP server exposes feeds, docs and deep links so assistants can open the right article.

What’s next

Store builds for the mobile app through EAS and TestFlight.