Find a file
2019-09-12 17:07:04 +02:00
.github Remove old bridge request template 2019-06-06 19:57:04 +02:00
actions format: Refactor format factory to non-static class 2019-06-18 19:15:20 +02:00
bridges [TwitterBridge] Enable cookies with curl (#1245) 2019-09-12 16:14:48 +02:00
cache cache: Keep subfolders in the repository 2019-07-06 12:12:59 +02:00
caches config: Use global constant for config files 2019-06-07 19:48:29 +02:00
formats [core] Fix double XML encoding on Atom feed title (#1247) 2019-08-28 16:29:13 +02:00
lib [contents] Respect passed headers for file_get_contents() (#1234) 2019-07-29 12:05:13 +02:00
static logo: Add logo to the project 2019-06-25 18:42:11 +02:00
tests [ListActionTest] Fix broken test 2019-06-18 19:21:28 +02:00
vendor [simplehtmldom] Update to version 1.9 2019-06-01 20:02:07 +02:00
.dockerignore [Docker] Switch Docker Image to official php base image (#1140) 2019-06-01 11:25:01 +02:00
.gitattributes [.gitattributes] Keep files in export for Heroku 2019-06-16 19:15:28 +02:00
.gitignore [.gitignore] Add robots.txt to the ignore list (#1128) 2019-05-15 21:40:50 +02:00
.travis.yml travis: Update build script to test more reasonable configurations 2019-03-20 19:31:34 +01:00
app.json [README] Add deploy button to Heroku (#1150) 2019-06-08 14:53:26 +02:00
composer.json [README] Add deploy button to Heroku (#1150) 2019-06-08 14:53:26 +02:00
composer.lock [README] Add deploy button to Heroku (#1150) 2019-06-08 14:53:26 +02:00
config.default.ini.php config: Add [system] => 'timezone' 2019-06-07 19:22:51 +02:00
Dockerfile [Docker] Switch Docker Image to official php base image (#1140) 2019-06-01 11:25:01 +02:00
index.php [index] Don't set the timezone in index.php 2019-06-08 16:16:03 +02:00
phpcompatibility.xml travis: Fail on deprecation warning 2018-12-28 16:15:36 +01:00
phpcs.xml [phpcs] Fix blank line detection 2018-12-26 21:39:37 +01:00
phpunit.xml core: Implement action factory (#1002) 2019-02-06 18:34:51 +01:00
README.md [README] Update list of contributors 2019-09-12 17:07:04 +02:00
scalingo.json Typo 2016-08-02 23:37:01 +02:00
UNLICENSE let's unlicense ! 2014-05-21 20:11:01 +02:00
whitelist.default.txt core: Move default bridges to whitelist.default.txt 2019-06-06 20:53:46 +02:00

RSS-Bridge

LICENSE GitHub release Debian Release Guix Release Build Status Docker Build Status

RSS-Bridge is a PHP project capable of generating RSS and Atom feeds for websites which don't have one. It can be used on webservers or as stand alone application in CLI mode.

Important: RSS-Bridge is not a feed reader or feed aggregator, but a tool to generate feeds that are consumed by feed readers and feed aggregators. Find a list of feed aggregators on Wikipedia.

Supported sites/pages (examples)

  • Bandcamp : Returns last release from bandcamp for a tag
  • Cryptome : Returns the most recent documents from Cryptome.org
  • DansTonChat: Most recent quotes from danstonchat.com
  • DuckDuckGo: Most recent results from DuckDuckGo.com
  • Facebook : Returns the latest posts on a page or profile on Facebook
  • FlickrExplore : Latest interesting images from Flickr
  • GoogleSearch : Most recent results from Google Search
  • Identi.ca : Identica user timeline (Should be compatible with other Pump.io instances)
  • Instagram: Most recent photos from an Instagram user
  • OpenClassrooms: Lastest tutorials from fr.openclassrooms.com
  • Pinterest: Most recent photos from user or search
  • ScmbBridge: Newest stories from secouchermoinsbete.fr
  • ThePirateBay : Returns the newest indexed torrents from The Pirate Bay with keywords
  • Twitter : Return keyword/hashtag search or user timeline
  • Wikipedia: highlighted articles from Wikipedia in English, German, French or Esperanto
  • YouTube : YouTube user channel, playlist or search

And many more, thanks to the community!

Output format

RSS-Bridge is capable of producing several output formats:

  • Atom : Atom feed, for use in feed readers
  • Html : Simple HTML page
  • Json : JSON, for consumption by other applications
  • Mrss : MRSS feed, for use in feed readers
  • Plaintext : Raw text, for consumption by other applications

You can extend RSS-Bridge with your own format, using the Format API!

Screenshot

Welcome screen:

Screenshot


RSS-Bridge hashtag (#rss-bridge) search on Twitter, in Atom format (as displayed by Firefox):

Screenshot

Requirements

RSS-Bridge requires PHP 5.6 or higher with following extensions enabled:

Find more information on our Wiki

Enable / Disable bridges

RSS-Bridge allows you to take full control over which bridges are displayed to the user. That way you can host your own RSS-Bridge service with your favorite collection of bridges!

Find more information on the Wiki

Notice: By default RSS-Bridge will only show a small subset of bridges. Make sure to read up on whitelisting to unlock the full potential of RSS-Bridge!

Deploy

Thanks to the community, hosting your own instance of RSS-Bridge is as easy as clicking a button!

Deploy on Scalingo Deploy to Heroku

Getting involved

There are many ways for you to getting involved with RSS-Bridge. Here are a few things:

  • Share RSS-Bridge with your friends (Twitter, Facebook, ...you name it...)
  • Report broken bridges or bugs by opening Issues on GitHub
  • Request new features or suggest ideas (via Issues)
  • Discuss bugs, features, ideas or issues
  • Add new bridges or improve the API
  • Improve the Wiki
  • Host an instance of RSS-Bridge for your personal use or make it available to the community 💖

Authors

We are RSS-Bridge community, a group of developers continuing the project initiated by sebsauvage, webmaster of sebsauvage.net, author of Shaarli and ZeroBin.

Contributors (sorted alphabetically):

Licenses

The source code for RSS-Bridge is Public Domain.

RSS-Bridge uses third party libraries with their own license:

Technical notes

  • RSS-Bridge uses caching to prevent services from banning your server for repeatedly updating feeds. The specific cache duration can be different between bridges. Cached files are deleted automatically after 24 hours.
  • You can implement your own bridge, following these instructions.
  • You can enable debug mode to disable caching. Find more information on the Wiki

Rant

Dear so-called "social" websites.

Your catchword is "share", but you don't want us to share. You want to keep us within your walled gardens. That's why you've been removing RSS links from webpages, hiding them deep on your website, or removed feeds entirely, replacing it with crippled or demented proprietary API. FUCK YOU.

You're not social when you hamper sharing by removing feeds. You're happy to have customers creating content for your ecosystem, but you don't want this content out - a content you do not even own. Google Takeout is just a gimmick. We want our data to flow, we want RSS or Atom feeds.

We want to share with friends, using open protocols: RSS, Atom, XMPP, whatever. Because no one wants to have your service with your applications using your API force-feeding them. Friends must be free to choose whatever software and service they want.

We are rebuilding bridges you have wilfully destroyed.

Get your shit together: Put RSS/Atom back in.