reader logo

reader

  •  0 ratings
In category: Feed Readers

About reader

A Python feed reader web app and library (so you can use it to build your own), with only standard library and pure-Python dependencies.

  •   1264  
  •   0  
  •   0  
  •   0  
Github stats:
  •  Commits: N/A  
  •   N/A  
  •   N/A  
  •  Latest commit: N/A  

Self-host this app for $0.99/mo only!

Languages/Platforms/Technologies:
Lincenses:

More about reader

.. begin-intro

reader is a Python feed reader library.

It is designed to allow writing feed reader applications without any business code, and without depending on a particular framework.

.. end-intro

|build-status-github| |code-coverage| |documentation-status| |pypi-status| |type-checking| |code-style|

.. |build-status-github| image:: https://github.com/lemon24/reader/workflows/build/badge.svg :target: https://github.com/lemon24/reader/actions?query=workflow%3Abuild :alt: build status (GitHub Actions)

.. |code-coverage| image:: https://codecov.io/gh/lemon24/reader/branch/master/graph/badge.svg?token=lcLZaSFysf :target: https://codecov.io/gh/lemon24/reader :alt: code coverage

.. |documentation-status| image:: https://readthedocs.org/projects/reader/badge/?version=latest&style=flat :target: https://reader.readthedocs.io/en/latest/?badge=latest :alt: documentation status

.. |pypi-status| image:: https://img.shields.io/pypi/v/reader.svg :target: https://pypi.python.org/pypi/reader :alt: PyPI status

.. |type-checking| image:: http://www.mypy-lang.org/static/mypy_badge.svg :target: http://mypy-lang.org/ :alt: checked with mypy

.. |code-style| image:: https://img.shields.io/badge/code%20style-black-000000.svg :target: https://github.com/psf/black :alt: code style: black

.. begin-features

reader allows you to:

  • retrieve, store, and manage Atom, RSS, and JSON feeds

  • and even follow Twitter accounts

  • mark articles as read or important

  • add arbitrary tags/metadata to feeds and articles
  • filter feeds and articles
  • full-text search articles
  • get statistics on feed and user activity
  • write plugins to extend its functionality
  • skip all the low level stuff and focus on what makes your feed reader different

...all these with:

  • a stable, clearly documented API
  • excellent test coverage
  • fully typed Python

What reader doesn't do:

  • provide an UI
  • provide a REST API (yet)
  • depend on a web framework
  • have an opinion of how/where you use it

The following exist, but are optional (and frankly, a bit unpolished):

  • a minimal web interface

  • that works even with text-only browsers

  • with automatic tag fixing for podcasts (MP3 enclosures)

  • a command-line interface

.. end-features

Documentation: reader.readthedocs.io_

.. _reader.readthedocs.io: https://reader.readthedocs.io/

Usage:

.. begin-usage

.. code-block:: bash

$ pip install reader

.. code-block:: python

>>> from reader import make_reader
>>>
>>> reader = make_reader('db.sqlite')
>>> reader.add_feed('http://www.hellointernet.fm/podcast?format=rss')
>>> reader.update_feeds()
>>>
>>> entries = list(reader.get_entries())
>>> [e.title for e in entries]
['H.I. #108: Project Cyclops', 'H.I. #107: One Year of Weird', ...]
>>>
>>> reader.mark_entry_as_read(entries[0])
>>>
>>> [e.title for e in reader.get_entries(read=False)]
['H.I. #107: One Year of Weird', 'H.I. #106: Water on Mars', ...]
>>> [e.title for e in reader.get_entries(read=True)]
['H.I. #108: Project Cyclops']
>>>
>>> reader.update_search()
>>>
>>> for e in reader.search_entries('year', limit=3):
...     title = e.metadata.get('.title')
...     print(title.value, title.highlights)
...
H.I. #107: One Year of Weird (slice(15, 19, None),)
H.I. #52: 20,000 Years of Torment (slice(17, 22, None),)
H.I. #83: The Best Kind of Prison ()

.. end-usage

Comments (0)

Please login to join the discussion on this project.

reader Reviews (0)

Overall Rating

None

based on 0 ratings

Please login to review this project.

No reviews for this project yet.

↑ back to top

RackNerd Medium Rectangle Banner

Popular Projects

FluxBB

in Social Networks and Forums
 47k    0    0    0  

Nextcloud

in File Transfer & Synchronization
 41k    1    1    0  

Teddit

in Social Networks and Forums
 26k    0    0    0  

Libre Translate

in Miscellaneous
 17k    0    0    0  

Dashboard

in Personal Dashboards
 16k    0    0    0  

Audiobookshelf

in Audio Streaming
 14k    0    1    0  

Libreddit

in Social Networks and Forums
 14k    0    1    0  

Most Discussed

Nextcloud

in File Transfer & Synchronization
 41k    1    1    0  

Tube Archivist

in Automation
 7k    0    1    0  

OneDev

in Project Management
 5k    0    0    0  

iodine

in Proxy
 4k    0    0    0  

Alf.io

in Booking and Scheduling
 4k    0    0    0  

sysPass

in Password Managers
 2k    0    0    0  

Misskey

in Social Networks and Forums
 5k    0    0    0  
pCloud Lifetime

Top Rated Projects

Gitea

 1 rating
in Project Management

Bagisto

 1 rating
in E-commerce

LinkAce

 1 rating
in Bookmarks and Link Sharing

Pydio

 1 rating
in File Transfer & Synchronization

Audiobookshelf

 1 rating
in Audio Streaming

Nextcloud

 1 rating
in File Transfer & Synchronization

Seafile

 1 rating
in File Transfer & Synchronization

Categories

You May Also Be Interested In

Sismics Reader logo
Sismics Reader cover

Sismics Reader

Free and open source feeds reader, including all major Goog…

newsdash logo
newsdash cover

newsdash

A news dashboard inspired by iGoogle and Netvibes.

Temboz logo
Temboz cover

Temboz

Two-column feed reader emphasizing filtering capabilities t…