A Python script for browsing Hacker News and Lobsters discussions with a nostalgic interface emulating classical usenet and mail readers, like slrn and mutt.
It was primarily written so I could highlight interesting threads and keep track of read / unread messages (see blog post). The UI showing one message at a time also encourages slower, more focused reading.
It only depends on Python 3.9 and doesn't require installation, you can run it with:
$ curl -LO https://raw.githubusercontent.com/luke8086/retronews/main/retronews.py
$ python3 ./retronews.py
Press ?
to see available keybindings.
- The reader is read-only, there are no plans to support voting and posting
- Message formatting is not perfect, but works well enough most of the time
- Detecting if threads contain unread responses works by only checking their count, it's not reliable if any responses were deleted
- No config file is planned, since the code is in Python, it's simpler to treat it as its own config and customize directly
NNTP doesn't support browsing threads by title (let alone paginated) and requesting their messages on demand. Clients need to fetch metadata of all available messages in all available threads in advance. Given the volume of messages on HN, synchronizing them to the gateway is not practical. Even when attempted, some clients struggle with the sheer number of messages in a single group.
- HN Search @ Algolia - The underlying API used to retrieve messages
- nntpit - An NNTP gateway to reddit.com
- circumflex - Another, more advanced TUI for HN