Skip to content

cedricbonhomme/newspipe

Repository files navigation

Newspipe

builds.sr.ht status

Presentation

Newspipe is a web news aggregator.

Newspipe Home page

Newspipe is written in Python. The core technologies are Flask, asyncio and SQLAlchemy.

Main features

  • multiple users can use a Newspipe instance.
  • an API to manage feeds (you can connect your own crawler).
  • data liberation: export and import your account with a JSON file.
  • export and import feeds with OPML files.
  • search and favorite articles.
  • detection of inactive feeds.
  • management of bookmarks (with import from Pinboard).
  • optional ldap authentication.
  • user interface available with a light theme and a dark theme.

Deployment

Newspipe is really easy to deploy. Assuming you have already installed git, poetry, npm, and Python >= 3.10, you just have to do the following:

$ git clone https://github.com/cedricbonhomme/newspipe
$ cd newspipe/
$ npm ci
$ poetry install --no-dev
$ poetry shell
$ pybabel compile -d newspipe/translations
$ export NEWSPIPE_CONFIG=sqlite.py
$ export FLASK_DEBUG=1
$ flask db_init
$ flask create_admin --nickname <nickname> --password <password>
$ flask run
 * Debug mode: on

If you want to use PostgreSQL you can customize the provided example configuration file (instance/config.py):

$ sudo apt-get install postgresql
$ cp instance/config.py instance/postgresql.py
$ vim instance/postgresql.py # customize it
$ export NEWSPIPE_CONFIG=postgresql.py
$ flask db_create
$ flask db_init
...

For production you can use Gunicorn or mod_wsgi.

License

Newspipe is under the GNU Affero General Public License version 3.

Donations

If you wish and if you like Newspipe, you can donate:

GitHub Sponsors

Thank you !

Contact

Cédric Bonhomme