Welcome to OpenFeed!
OpenFeed is a self-hosted news and social media aggregator.
Things you can do with OpenFeed:
- See events from local businesses on your phone
- Get the top Hacker News stories every Saturday
- Print the NYT crossword every day at 8am
- Watch a stream of all videos posted to kottke.org
- See a list of all YouTube videos only from channels you subscribe to
- Get a text with the weather forecast every day at 6am
Quick start
- Install:
npm install -g openfeed - Add an
openfeed.yamlconfig file (see configuration) - Run:
openfeed - Visit your server at
http://localhost:3000
See full installation instructions.
How it works
Install OpenFeed and configure it with an openfeed.yaml file listing your sources and a schedule.
OpenFeed runs as a server that periodically fetches content from each source and compiles it into a feed. Browse your feed from any device by visiting your personal server's URL.
Server
The OpenFeed server is an open-source Node.js server that you run on your own hardware. The server intermittently queries various content sources on your behalf, filters content according to your preferences, and compiles the posts into a custom feed.
The OpenFeed server uses connectors to download and format content from various sources. You can configure your OpenFeed server with various sources and feeds with an openfeed.yaml file.
Clients
An OpenFeed client is any application that queries from an OpenFeed server instance and displays posts to the user. OpenFeed clients use the OpenFeed API to communicate with an OpenFeed server.
OpenFeed comes with one official client, bundled with the server when you install.
- Web - React-based; supports PWAs, mobile web, and desktop.
Ideas for OpenFeed clients:
- Native mobile - native iOS and Android apps for browsing your OpenFeed
- Print - automatically print the news each day
- CLI - browse your feed from the terminal
- Google TV
- SMS - Get breaking news by text
You can create your own clients by hitting the OpenFeed API. If you do, let me know so I can add it here!