Generate RSS Feeds from Any Website with CloudFlare Workers (No Backend Needed)

/ Lab Insights Journal / Tutorials / Generate RSS Feeds from Any Website with CloudFlare Workers (No Backend Needed)
April 17, 2025 Brian Zalewski
CSS to RSS Computer

TL;DR: I’ve developed a CloudFlare Worker that converts any blog or website into a fully functional RSS feed using CSS selectors specified via URL parameters. You can deploy it with a single click and tailor it to your site’s structure.​

One-Click Deployment

Deploy your own instance of the RSS feed generator as a CloudFlare Worker using the button below:​

CloudFlare Workers Button


How It Works

The CloudFlare Worker fetches the HTML content of a specified blog or website, parses it using HTMLRewriter, and extracts relevant information based on CSS selectors provided in the URL parameters. It then constructs a valid RSS 2.0 feed in real-time.​

Example Usage:

To generate an RSS feed from https://install.doctor/blog, you can use:​

https://rss-worker.manhattan.workers.dev/?url=https://install.doctor/blog&item=.post&title=.post-title&description=.post-summary&link=.post-link

This URL tells the Worker to:​

  • Fetch the blog page at https://install.doctor/blog.
  • Identify each blog post using the .post selector.
  • Extract the title from elements with the .post-title class.
  • Extract the description from elements with the .post-summary class.
  • Extract the link from elements with the .post-link class.​

Screenshots

Blog Listing Page

Install Doctor Blog

Generated RSS Feed

Install Doctor RSS

Documentation

Required URL Parameters:

  • url: The full URL of the blog or website to convert.
  • item: CSS selector for the container of each blog post.
  • title: CSS selector for the post title.
  • description: CSS selector for the post summary or description.
  • link: CSS selector for the post link.​

Optional URL Parameters:

  • pubDate: CSS selector for the publication date.
  • creator: CSS selector for the author’s name.
  • image: CSS selector for the post’s featured image.
  • content: CSS selector for the full post content.
  • channelTitle: Custom title for the RSS feed.
  • channelDescription: Custom description for the RSS feed.
  • managingEditor: Email address of the managing editor.
  • applicationName: Name of the application generating the feed.
  • twitterUser: Twitter username for sharing links.​

Example with Optional Parameters:

https://rss-worker.manhattan.workers.dev/?url=https://install.doctor/blog&item=.post&title=.post-title&description=.post-summary&link=.post-link&pubDate=.post-date&creator=.post-author&image=.post-image&channelTitle=Example%20Blog&channelDescription=Latest%20posts%20from%20Example%20Blog&managingEditor=editor@example.com&applicationName=ExampleRSS&twitterUser=exampleuser

Customization

You can customize the RSS feed to match the structure of any blog or website by adjusting the CSS selectors in the URL parameters. Inspect the HTML structure of the target site to identify the appropriate selectors for each piece of information you want to include in the feed.​


Hosting on Your Domain

To serve the RSS feed from your own domain, you can set up a custom subdomain (e.g., rss.yourdomain.com) and configure it to point to your CloudFlare Worker. This can be achieved by:​

  1. ​Creating a CNAME record in your DNS settings that points rss.yourdomain.com to your Worker’s subdomain.​
  2. ​Setting up a route in CloudFlare to associate the custom subdomain with your Worker.

For detailed instructions, refer to the CloudFlare Workers documentation.​


Contact & Support

If you have questions, need assistance, or want to contribute to the project, feel free to reach out:​


Harness the power of CloudFlare Workers to bring RSS feeds back to life for any blog or website. Deploy your own instance today and stay updated with your favorite content sources!


Discover more from Megabyte Labs

Subscribe to get the latest posts sent to your email.

, , , ,

Brian Zalewski

Call me BZ — tech lead at Megabyte Labs by day, gym rat, social spark, and sports lover by night. I’m into all things automation, AI, and the occasional deep dive into the metaphysical. Whether it's optimizing code or imagining better futures, I'm always chasing the next big idea with curiosity and intention.

Questions? Let’s Talk.

We would love to hear from you! Whether you have a question, a project in mind, or just want to say hey — feel free to submit a message using the contact form or reach out directly to Brian Zalewski at brian@megabyte.space.

contact

Purpose & Promise

We exist to help you move fast, stay focused, and build what matters—with less friction and more flow.

Our promise: to deliver thoughtful, scalable solutions that not only meet your needs—but exceed expectations.

Lab Notes Newsletter

Join the Lab Notes Newsletter for hand-picked developer tools, open-source gems, and workflow tips delivered straight to your inbox.


join-newsletter