explaingit

diygod/rsshub

43,867TypeScriptAudience · generalComplexity · 3/5LicenseSetup · moderate

TLDR

Open-source service that generates RSS feeds for over 5,000 websites and platforms that don't provide one natively, from social media to news outlets to developer tools.

Mindmap

mindmap
  root((RSSHub))
    What it does
      Generate RSS feeds
      Scrape websites
      Call site APIs
    Sources
      Social media
      Video platforms
      News outlets
      Developer tools
    Deployment
      Self hosted Docker
      Public instances
      Node.js hosting
    Features
      5000 plus routes
      Custom auth
      Community routes
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Subscribe to a creator's posts on Bilibili, Pixiv, or Douban as an RSS feed in your reader app without needing the platform to offer one.

USE CASE 2

Deploy your own RSSHub instance to access private feeds that require site-specific authentication credentials.

USE CASE 3

Add a new RSS route for any website by contributing TypeScript code that fetches and parses that site's content.

USE CASE 4

Combine RSSHub with an RSS reader like Folo to follow all your content sources from social media, news, and dev tools in one place.

Tech stack

TypeScriptNode.jsDocker

Getting it running

Difficulty · moderate Time to first run · 30min

Running a private instance with authentication for specific sites requires Docker and per-site credential configuration in the environment.

Free to use and modify, but if you run it as a networked service or distribute it, your version must also be open-sourced under AGPL-3.0.

In plain English

RSSHub is an open-source tool that generates RSS feeds for websites and online services that don't provide one natively. RSS (Really Simple Syndication) is a standardized format that lets you subscribe to content updates from any website and read them in a feed reader, rather than visiting each site individually. The problem is that many popular platforms, social media sites, video platforms, forums, news aggregators, don't publish RSS feeds anymore, or never did. RSSHub bridges this gap. The way it works is conceptually simple: RSSHub is a web service you run (or use someone else's public instance of) that knows how to scrape or call the API of hundreds of specific websites, extract the new content, and format it as a valid RSS feed. When you want an RSS feed for, say, a creator's posts on Bilibili, a Pixiv artist's illustrations, a Douban user's reviews, or an Instagram account, you construct a specific RSSHub URL and point your feed reader at it. RSSHub handles fetching and parsing the source and serving back a live RSS feed. The project has over 5,000 community-contributed routes covering thousands of websites worldwide, news outlets, social platforms, developer tools, government portals, academic publishers, and many more. Adding new routes is done by contributing TypeScript code that describes how to fetch and parse a particular source. You would deploy your own RSSHub instance when you want privacy, reliability, or access to routes that require authentication credentials for specific sites. Alternatively you can use one of the many public instances run by community members. The tech stack is TypeScript running on Node.js. It can be deployed via Docker or standard Node.js hosting. The project pairs with Folo, an RSS reader, for a complete read-everything workflow. It is licensed under AGPL-3.0.

Copy-paste prompts

Prompt 1
I want to follow a Bilibili creator's videos in my RSS reader. Give me the RSSHub URL format for that and explain how to point my reader at it.
Prompt 2
Walk me through deploying my own RSSHub instance on a VPS using Docker so I can access private feeds that require login credentials.
Prompt 3
I want to add a new RSSHub route for a website that doesn't have an RSS feed. Show me the TypeScript structure for a basic route that fetches and parses an HTML page.
Prompt 4
How do I configure authentication in my self-hosted RSSHub instance for sites that require credentials like API keys or session cookies?
Prompt 5
Using RSSHub and Folo together, help me set up a workflow to follow 20 different content sources and organize them into topic folders.
Open on GitHub → Explain another repo

← diygod on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.