Download the PHP package rss-bridge/rss-bridge without Composer
On this page you can find all versions of the php package rss-bridge/rss-bridge. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download rss-bridge/rss-bridge
More information about rss-bridge/rss-bridge
Files in rss-bridge/rss-bridge
Package rss-bridge
Short Description RSS-Bridge is a PHP project capable of generating RSS and Atom feeds for websites that don't have one. It can be used on webservers or as a stand-alone application in CLI mode.
License UNLICENSE
Homepage https://github.com/rss-bridge/rss-bridge/
Informations about the package rss-bridge
RSS-Bridge
RSS-Bridge is a PHP web application.
It generates web feeds for websites that don't have one.
Officially hosted instance: https://rss-bridge.org/bridge01/
IRC channel #rssbridge at https://libera.chat/
Alternatively find another public instance.
Requires minimum PHP 7.4.
A subset of bridges (16/447)
CssSelectorBridge
: Scrape out a feed using CSS selectorsFeedMergeBridge
: Combine multiple feeds into oneFeedReducerBridge
: Reduce a noisy feed by some percentageFilterBridge
: Filter a feed by excluding/including items by keywordGettrBridge
: Fetches the latest posts from a GETTR userMastodonBridge
: Fetches statuses from a Mastodon (ActivityPub) instanceRedditBridge
: Fetches posts from a user/subredit (with filtering options)RumbleBridge
: Fetches channel/user videosSoundcloudBridge
: Fetches music by usernameTelegramBridge
: Fetches posts from a public channelThePirateBayBridge:
Fetches torrents by search/user/categoryTikTokBridge
: Fetches posts by usernameTwitchBridge
: Fetches videos from channelVkBridge
: Fetches posts from user/groupXPathBridge
: Scrape out a feed using XPath expressionsYoutubeBridge
: Fetches videos by username/channel/playlist/searchYouTubeCommunityTabBridge
: Fetches posts from a channel's community tab
Tutorial
How to install on traditional shared web hosting
RSS-Bridge can basically be unzipped in a web folder. Should be working instantly.
Latest zip as of Sep 2023: https://github.com/RSS-Bridge/rss-bridge/archive/refs/tags/2023-09-24.zip
How to install on Debian 12 (nginx + php-fpm)
These instructions have been tested on a fresh Debian 12 VM from Digital Ocean (1vcpu-512mb-10gb, 5 USD/month).
Nginx config:
PHP FPM pool config:
PHP ini config:
Restart fpm and nginx:
How to install from Composer
Install the latest release.
How to install with Caddy
TODO. See https://github.com/RSS-Bridge/rss-bridge/issues/3785
Install from Docker Hub:
Install by downloading the docker image from Docker Hub:
Browse http://localhost:3000/
Install by locally building from Dockerfile
Browse http://localhost:3000/
Install with docker-compose
Create a docker-compose.yml
file locally with with the following content:
Then launch with docker-compose
:
Browse http://localhost:3000/
Other installation methods
The Heroku quick deploy currently does not work. It might work if you fork this repo and
modify the repository
in scalingo.json
. See https://github.com/RSS-Bridge/rss-bridge/issues/2688
Learn more in Installation.
How-to
How to fix "Access denied."
Output is from php-fpm. It is unable to read index.php.
chown rss-bridge:rss-bridge /var/www/rss-bridge/index.php
How to password-protect the instance (token)
Modify config.ini.php
:
[authentication]
token = "hunter2"
How to remove all cache items
As current user:
bin/cache-clear
As user rss-bridge:
sudo -u rss-bridge bin/cache-clear
As root:
sudo bin/cache-clear
How to remove all expired cache items
bin/cache-prune
How to fix "PHP Fatal error: Uncaught Exception: The FileCache path is not writable"
How to fix "attempt to write a readonly database"
The sqlite files (db, wal and shm) are not writeable.
chown -v rss-bridge:rss-bridge cache/*
How to fix "Unable to prepare statement: 1, no such table: storage"
rm cache/*
How to create a new bridge from scratch
Create the new bridge in e.g. bridges/BearBlogBridge.php
:
Learn more in bridge api.
How to enable all bridges
enabled_bridges[] = *
How to enable some bridges
How to enable debug mode
The debug mode disables the majority of caching operations.
enable_debug_mode = true
How to switch to memcached as cache backend
How to switch to sqlite3 as cache backend
type = "sqlite"
How to disable bridge errors (as feed items)
When a bridge fails, RSS-Bridge will produce a feed with a single item describing the error.
This way, feed readers pick it up and you are notified.
If you don't want this behaviour, switch the error output to http
:
[error]
; Defines how error messages are returned by RSS-Bridge
;
; "feed" = As part of the feed (default)
; "http" = As HTTP error message
; "none" = No errors are reported
output = "http"
How to accumulate errors before finally reporting it
Modify report_limit
so that an error must occur 3 times before it is reported.
; Defines how often an error must occur before it is reported to the user
report_limit = 3
The report count is reset to 0 each day.
How to password-protect the instance (HTTP Basic Auth)
[authentication]
enable = true
username = "alice"
password = "cat"
Will typically require feed readers to be configured with the credentials.
It may also be possible to manually include the credentials in the URL:
https://alice:[email protected]/bridge01/?action=display&bridge=FabriceBellardBridge&format=Html
How to create a new output format
See formats/PlaintextFormat.php
for an example.
How to run unit tests and linter
These commands require that you have installed the dev dependencies in composer.json
.
./vendor/bin/phpunit
./vendor/bin/phpcs --standard=phpcs.xml --warning-severity=0 --extensions=php -p ./
https://github.com/squizlabs/PHP_CodeSniffer/wiki
How to spawn a minimal development environment
php -S 127.0.0.1:9001
Explanation
We are RSS-Bridge community, a group of developers continuing the project initiated by sebsauvage, webmaster of sebsauvage.net, author of Shaarli and ZeroBin.
See CONTRIBUTORS.md
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.
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!
Current maintainers (as of 2024): @dvikan and @Mynacol #2519
Reference
Feed item structure
This is the feed item structure that bridges are expected to produce.
Output formats
Atom
: Atom feed, for use in feed readersHtml
: Simple HTML pageJson
: JSON, for consumption by other applicationsMrss
: MRSS feed, for use in feed readersPlaintext
: Raw text, for consumption by other applicationsSfeed
: Text, TAB separated
Cache backends
File
SQLite
Memcached
Array
Null
Licenses
The source code for RSS-Bridge is Public Domain.
RSS-Bridge uses third party libraries with their own license:
Parsedown
licensed under the MIT LicensePHP Simple HTML DOM Parser
licensed under the MIT Licensephp-urljoin
licensed under the MIT LicenseLaravel framework
licensed under the MIT License
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 willfully destroyed.
Get your shit together: Put RSS/Atom back in.
All versions of rss-bridge with dependencies
ext-mbstring Version *
ext-curl Version *
ext-openssl Version *
ext-libxml Version *
ext-simplexml Version *
ext-dom Version *
ext-json Version *