html2rss is a Ruby gem that generates RSS 2.0 feeds from websites by scraping HTML or JSON content with CSS selectors or auto-detection.
This gem is the core of the html2rss-web application.
Most people looking for a first working feed should start with html2rss-web, run it with Docker, and open one of the included feeds from their own instance before moving to custom configs or the gem APIs.
Detailed usage guides, reference docs, and the feed directory live on the project website:
- Ruby gem documentation
- Request strategies (
auto,faraday,botasaurus,browserless) - Selectors & pagination
- Web application
- Feed directory
- Contributing guide
- GitHub Discussions
- Sponsor on GitHub
Cloud development: Open in GitHub Codespaces (also covered in the installation guide).
- Config — loads and validates configuration (YAML/hash); schema via
html2rss schema/schema/html2rss-config.schema.json - RequestService — fetches pages (
faraday,botasaurus, orbrowserless) - Selectors — extracts content via CSS selectors with extractors/post-processors
- AutoSource — auto-detects content (Schema.org, JSON state, semantic HTML, structural patterns)
- RssBuilder — assembles Article objects and renders RSS 2.0
Config -> Request -> Extraction -> Processing -> Building -> Output
This project is licensed under the MIT License — see the LICENSE file for details.

