I wrote a blog post about this repo here: https://olshansky.substack.com/p/no-rss-feed-no-problem-using-claude
You know how there are a bunch of blogs out there without RSS Feeds? π‘
Well, we're going to fix it Open Source Style. π
To make it simple, it just uses GitHub actions and some Python code. π
More importantly, we're using AI tooling so anyone can contribute. π€
And everyone can learn along the way. π§βπ
- How do I subscribe to an existing RSS feed?
- Which RSS feeds are available?
- How do I request a new RSS feed?
- How do I contribute a new feed?
- What did I use to make this?
- Star History
- How does this work?
To subscribe to an RSS feed, use the raw link of the feed file.
You can find all available feeds in the feeds directory.
For example, to subscribe to the Ollama Blog feed, use the following link:
https://raw.githubusercontent.com/Olshansk/rss-feeds/main/feeds/feed_ollama.xml
Personally, I use Blogtrottr so my email inbox acts as an RSS queue, but you can use any RSS reader.
- π¦ Ollama Blog: Ollama RSS feed
- π¨ Paul Graham's Article: Paul Graham RSS feed
- π¦ Anthropic News: Anthropic RSS feed
- π€ OpenAI Research News
Coming soon:
- π¨ Patrick Collison's Blog
- π½ Supabase Blog
If you would like to request a new RSS feed for a blog, please use our GitHub issue template.
Make sure to provide the link to the actual blog.
To contribute a new feed, refer to the Claude Projects section.
It provides detailed instructions on how to convert HTML files into Python scripts that generate RSS feeds.
Link: GitHub Copilot Workspace
GitHub Copilot Workspace is still in preview (as of 01/2025), so I can't share the workspace.
However, I've attached the copilot
label to all PRs generated by GitHub Copilot.
You can access them here.
Link: Claude Projects
I can't share the project (feature is not available as of 01/2025), so I'll share the details.
The knowledge of the project includes files from this repository.
The instructions are:
The goal of this project is to generate rss (feed.xml) files from web pages (*.html) that contain blogs or updates but do not provide a subscribe button or a default RSS feed.
Here is the expected flow and instructions:
1. You will be given an HTML file that needs to be parsed and understood.
2. You will provide a python script that writes a `feed_{}.xml` file that is RSS feed compatible.
3. The `{}` in `feed_{}.xml` will refer to the name of a particular RSS feed.
4. GitHub actions will take care of triggering this periodically, so you don't have to worry about it
5. If you are not given an HTML file that you can parse into an rss feed, either ask for it or explain what the issue with the provided file is.
Link: Claude Sync
I use ClaudeSync
to sync all the files in this directory with the Project's knowledge.
flowchart TB
subgraph GitHub["GitHub Repository"]
action[[GitHub Action\nHourly Cron Job]]
runner{{"run_all_feeds.py"}}
feeds["Individual Feed Generators\n(*.py files)"]
xml["Generated RSS Feeds\n(feed_*.xml)"]
end
subgraph External["External Services"]
blogtrottr["Example: Blogtrottr"]
rssreaders["Other RSS Readers"]
end
action -->|"Triggers"| runner
runner -->|"Executes"| feeds
feeds -->|"Scrapes"| websites[("Blog Websites\n(HTML Content)")]
websites -->|"Content"| feeds
feeds -->|"Generates"| xml
xml -->|"Updates"| repo["GitHub Repository\nMain Branch"]
repo -->|"Pulls Feed"| blogtrottr
repo -->|"Pulls Feed"| rssreaders
style GitHub fill:#e6f3ff,stroke:#0066cc
style External fill:#f9f9f9,stroke:#666666
style action fill:#ddf4dd,stroke:#28a745,color:#000000
style runner fill:#fff3cd,stroke:#ffc107,color:#000000
style feeds fill:#f8d7da,stroke:#dc3545,color:#000000
style xml fill:#d1ecf1,stroke:#17a2b8,color:#000000
style websites fill:#e2e3e5,stroke:#383d41,color:#000000