Challenge
RSS and Atom are simple formats individually, but a useful feed reader also needs reliable refreshes, content caching, per-user subscription state, authentication, and a consistent way to manage many different sources.
Engineering
I built the application with a Next.js frontend and a Hono RPC backend backed by MongoDB. It implements access and refresh JWTs with automatic client-side token refresh, RSS and Atom ingestion, cached feed items, periodic background refreshes, per-user subscriptions and favorites, OPML import and export, and administrative feed management.
Outcome
The result is a selfhostable feed reader that combines feed ingestion, caching, subscription management, authentication, and article reading in a single deployable application.