About
robot.villas mirrors 188 public RSS and Atom feeds onto the Fediverse. Each feed gets its own bot account (@hackernews@robot.villas) that posts new items, so you can follow a blog from Mastodon or any ActivityPub server. It is open source and run for free by Nat Welch.
Adding a feed
Every bot is one entry in feeds.yml. Suggest a feed by opening a pull request — or an issue with the URL if you would rather not.
- Edit
feeds.ymland add a block underbots::example_blog: feed_url: https://example.com/feed.xml display_name: Example Blog summary: What the blog is about. profile_photo: https://example.com/avatar.png # optional default_hashtags: [Electronics, Retrocomputing] # optional, max 3 - The key becomes the handle, so it must be lowercase letters, numbers, or underscores.
display_nameis capped at 100 characters andsummaryat 500. - Run
pnpm validate-feedsto check the schema and that anyprofile_photois a reachable image. CI runs it too. - Open the pull request. The bot goes live the next time the server deploys.
Removing a feed
If you publish a feed here and would rather not, delete its entry in a pull request or open an issue and it will be removed. The bot account is deleted and its posts are withdrawn from the Fediverse.
How the fetcher behaves
If you run a site listed on the status page, this is what you will see in your logs:
- It identifies itself as
robot.villas RSS poller/1.0 (+https://robot.villas/about). - Each feed is fetched at most once an hour.
- Requests are conditional (
If-None-Match/If-Modified-Since), so an unchanged feed costs you a 304 and no body. - A
429pauses that feed until itsRetry-Afterhas passed. - Only titles and links are reposted, each crediting your feed with a link back.
Source
github.com/icco/robot.villas — bug reports and feed suggestions welcome.