Introduction
RSSHub is an open-source, self-hosted RSS feed generator that creates RSS feeds from websites that do not natively offer them. It bridges the gap between modern web platforms and the RSS ecosystem, letting developers subscribe to almost any content source through a unified feed interface.
What RSSHub Does
- Generates RSS feeds from hundreds of websites including GitHub, Twitter/X, Reddit, YouTube, and more
- Provides a route-based API where each feed maps to a clean URL path
- Supports custom feed parameters for filtering, sorting, and limiting results
- Offers built-in caching and rate-limiting features for stable operation
- Ships a browser extension (RSSHub Radar) that detects available feeds on any page
Architecture Overview
RSSHub is a Node.js application built on the Hono framework. Each supported website is implemented as a route module that fetches, parses, and transforms content into standard RSS/Atom/JSON Feed format. The modular design makes adding new routes straightforward: contributors write a data handler and a template, and RSSHub handles caching (Redis or in-memory), feed formatting, and delivery.
Self-Hosting & Configuration
- Deploy via Docker, Docker Compose, or directly with Node.js 18+
- Configure through environment variables:
CACHE_TYPE,REDIS_URL,ACCESS_KEY - Set
ACCESS_KEYto restrict instance access with token-based authentication - Use a reverse proxy (Nginx or Caddy) with HTTPS for production deployments
- Scale horizontally by running multiple instances behind a load balancer with shared Redis
Key Features
- Route-based generation: each content source maps to a URL like
/github/repos/user - RSSHub Radar browser extension auto-detects available routes on any page you visit
- Built-in caching layer with configurable TTL reduces upstream request frequency
- Community-maintained library of routes across social media, news, academia, and dev platforms
- Outputs RSS 2.0, Atom, and JSON Feed formats with full-text or summary modes
Comparison with Similar Tools
- Huginn — event-driven automation agent; more flexible but far more complex to set up per feed
- FreshRSS / Miniflux — RSS readers, not generators; RSSHub creates feeds that readers consume
- RSS-Bridge — similar concept with PHP backend; smaller route library and less active development
- Feedbin — hosted reader service; RSSHub is self-hosted and focused on feed creation, not reading
FAQ
Q: How do I add a route for a site RSSHub does not support?
A: Create a route module under lib/routes/, implement a handler that fetches and parses the page, then submit a pull request. The docs include a step-by-step guide.
Q: Can I protect my instance from public access?
A: Yes. Set the ACCESS_KEY environment variable and append ?key=<your-key> to feed URLs.
Q: Does RSSHub handle rate limits of target websites? A: RSSHub includes a configurable cache (default 5-minute TTL) that deduplicates requests. Per-route cache durations and concurrency limits are also available.
Q: Is RSSHub suitable for team or organization use?
A: Yes. Deploy a shared instance and distribute feed URLs to team members. Access control via ACCESS_KEY keeps the instance private.