Skip to content

pta2002/feedbiny

Repository files navigation

Feedbiny

Feedbiny is a version of feedbin with numerous patches to make self-hosting as painless as possible.

Here is what has changed from the original version:

  • Added a Dockerfile
  • Remove all billing infrastructure

These features are planned:

  • Allow replacing S3 with local storage without having to go through MinIO or similar
  • Bundle refresher and image and content extracters.
  • Make it possible to turn off signups.
  • Create invite links
  • Tweak things so that it uses as little memory and CPU as possible
  • Change the API to example.com/api/ from api.example.com
  • Drop the libv8/mini_racer dependency to make it easy to run on ARM

Feedbin Screenshot

Support

Support for Feedbin customers is available by emailing support@feedbin.com. No support is provided for installing/running Feedbin.

Introduction

Feedbin is a web based RSS reader. It provides a user interface for reading and managing feeds as well as a REST-like API for clients to connect to.

Feedbin's goal is to be a great web-based RSS service. This goal is at odds with being a great self-hosted RSS reader. There are a lot of moving parts and things to configure, so for that reason I do not recommend that you run Feedbin in production.

If you're looking for a self-hosted RSS reader check out:

And if you really want to run the whole Feedbin stack, take a look at this Docker version. If you would like to try Feedbin out you can sign up for an account.

The main Feedbin project is a Rails 6 application. In addition to the main project there are several other services that provide additional functionality. None of these services are required to get Feedbin running locally, but they all provide important functionality that you would want for a production install.

  • refresher: Refresher is the service that does feed refreshing. Feed refreshes are scheduled as background jobs using Sidekiq. Refresher is kept separate so it can be scaled independently. It's also a benefit to not have to load all of Rails for this service.
  • image: Image is the service that finds images to be associated with articles
  • camo: Camo is an https image proxy. In production Feedbin is SSL only. One issue with SSL is all assets must be served over SSL as well or the browser will show insecure content warnings. Camo proxies all image requests through an SSL enabled host to prevent this.
  • extract: Extract is a Node.js service that extract content from web pages. It is used to extract full pages when a feed only provide excerpts.

Requirements

Installation

Ultimately, you'll need a Ruby environment and a Rack compatible application server. For development Pow is recommended.

First, install the dependencies listed under requirements.

Next clone the repository and install the application dependencies

git clone https://github.com/feedbin/feedbin.git
cd feedbin
bundle

If you encounter any errors after running bundle there is a problem installing one of the dependencies. You must find out how to get this dependency installed on your platform.

Configure

Feedbin uses environment variables for configuration. Feedbin will run without most of these, but various features and functionality will be turned off.

Rename .env.example to .env and customize it with your settings.

Setup the database

rake db:setup

Start the processes

bundle exec foreman start

Status Badges

Ruby CI

Code Climate

Coverage Status