reader supports Python 3.9 and newer, and PyPy.
These packages will be installed automatically when installing reader:
feedparser parses feeds; reader is essentially feedparser + state.
requests retrieves feeds from the internet; it replaces feedparser’s default use of
urllibto make it easier to write plugins.
iso8601 parses dates in ISO 8601 / RFC 3339; used for JSON Feed parsing.
beautifulsoup4 is used to strip HTML tags before adding entries to the search index.
typing-extensions is used for
reader also depends on the
sqlite3 standard library module
(at least SQLite 3.15), and on the JSON1 SQLite extension.
To use the full-text search functionality,
at least SQLite 3.18 with the FTS5 extension is required.
Despite coming with a CLI and web application, reader is primarily a library. As such, most dependencies are optional, and can be installed as extras.
As of version 3.4, reader has the following extras:
cliinstalls the dependencies needed for the command-line interface.
appinstalls the dependencies needed for the web application.
Specific plugins may require additional dependencies; refer to their documentation for details.
You should probably install reader inside a virtual environment; see this for how and why to do it.
Use the following command to install reader, along with its required dependencies:
pip install reader
Use the following command to install reader with optional dependencies:
pip install 'reader[some-extra,...]'
Use the following command to update reader (add any extras as needed):
pip install --upgrade reader
Living on the edge
If you want to use the latest reader code before it’s released, install or update from the master branch:
pip install --upgrade https://github.com/lemon24/reader/archive/master.tar.gz