Readeef feed agregator
Clone or download
urandom Remove hammerjs
It breaks scrolling for mobile
Latest commit 0c8ef1e Sep 29, 2018
Permalink
Failed to load latest commit information.
api Handle paginating by scores along with dates Apr 29, 2018
cmd Use the webkit function directly to avoid breaks on redirects Aug 31, 2018
config Rework the popularity plugins, include only twitter and reddit Apr 28, 2018
content Reuse prepared statements Sep 24, 2018
feed Use a memstore for the session. Oct 14, 2017
internal/legacy Rework the popularity plugins, include only twitter and reddit Apr 28, 2018
log Reuse prepared statements Sep 24, 2018
parser More parser test coverage Nov 16, 2017
pool Code cleanup Jul 30, 2017
popularity Rework the popularity plugins, include only twitter and reddit Apr 28, 2018
rf-ng Remove hammerjs Sep 29, 2018
systemd Add an example systemd service file Dec 20, 2014
templates Remove the last old static files and templates Sep 30, 2017
web Simplify marking of read articles in the UI Apr 2, 2018
.gitignore add bower stuff Aug 15, 2014
Gopkg.lock Migrate to angular 6 Jul 1, 2018
Gopkg.toml Update the dependencies Dec 2, 2017
LICENSE gpl -> lgpl Sep 18, 2014
Makefile Update Makefile Apr 9, 2018
README.md Update README.md Apr 2, 2018
TODO merge the read and fav tables into a single table Sep 11, 2015
feed_manager.go Improve article and feed events Oct 14, 2017
feed_manager_test.go More code cleanup Jul 29, 2017
file.list Initial commit of angular ui Aug 13, 2017
fs.go Remove the last old static files and templates Sep 30, 2017
fs_files.go Remove hammerjs Sep 29, 2018
fs_files_nofs.go More code cleanup Jul 29, 2017
go.mod Reuse prepared statements Sep 24, 2018
go.sum Reuse prepared statements Sep 24, 2018
hubbub.go Improve article and feed events Oct 14, 2017
hubbub_test.go start replacing the old db usage with the new one Feb 27, 2015
timeout_client.go add a hubbub test and fix things along the way Aug 3, 2014

README.md

readeef

readeef is a self-hosted feed aggregator. Similar to Google Reader, but on your own server.

For a more detailed description, click here. Some screenshots may also be had on this page

Quick start

readeef is written in Go, and as of October 2017, requires at least version 1.8 of the language. The currently supported databases are PostgreSQL, and SQLite. SQLite support is only built if CGO is enabled. The later is not recommended, as locking problems will occur.

A single binary may be built from the sources. It current contains three subcommands, one for starting the server, one for rebuinding the search index (while the server is stopped), and an administrative command, for manipulating users. Since readeef can use bleve for FTS capabilities, bleve-specific tags (e.g.: libstemmer, cld2, etc) should be passed here.

go build github.com/urandom/readeef/cmd/readeef

Unless you are using SQLite, readeef will need to be configured as well. readeef uses TOML for configuration. A minimal configuration file might be something like this:

[db]
    driver = "postgres"
    connect = "host=/var/run/postgresql user=postgresuser dbname=readeefdbname"

You may provide the standalone server with a config files. The default server configuration is documented in godoc.org under the variable: DefaultCfg.

./readeef -config $CONFIG_FILE server

The source comes with an embedded UI using angular 4. A different UI may be provided by providing a path to it via the following configuration directive:

[ui] path = "/path/to/a/different/ui"

All three subcommands come with a comprehensive usage text:

readeef search-index --help

Adding a user

As a first step, you might want to add a new user to the system, using the 'user-admin' subcommand:

readeef -config $CONFIG_PATH user-admin add $USER_LOGIN $USER_PASS

Turning a user into an admin

You might then want to turn that user into an administrator:

./readeef -config $CONFIG_FILE user-admin set $USER_LOGIN admin true

"But I just want to try it"

# Install the server in $GOPATH/.bin/
go get github.com/urandom/readeef/cmd/readeef
# Run it using the default settings
readeef server

The server will run on port 8080, and you may login using the user 'admin' and password 'admin', using SQLite (if CGO is enabled)