| Crates.io | usenet_reborn |
| lib.rs | usenet_reborn |
| version | 0.2.2 |
| created_at | 2025-04-27 18:29:01.583997+00 |
| updated_at | 2025-09-20 14:01:10.347475+00 |
| description | Terminal-based Usenet NNTP client written in Rust with ratatui/crossterm. |
| homepage | https://sr.ht/~rek2/Usenet_Reborn |
| repository | https://git.sr.ht/~rek2/usenet_reborn |
| max_upload_size | |
| id | 1651351 |
| size | 4,253,668 |
The TUI client for Usenet enthusiasts
Author: Chris F.N. (aka ReK2)
License: GPLv3
Usenet Reborn is a terminal‑based NNTP client written in Rust, featuring:
$EDITOR.$SIGNATURE_FILE or ~/.signature.xdg-open.The application uses ratatui + crossterm for the UI, and rek2_nntp for NNTP interactions.

TODO List Heregit clone https://git.sr.ht/~rek2/usenet_reborn
cd usenet_reborn
cargo build --release
config.toml:[usenet.server]
username = "your_newsserver_username"
password = "" # leave blank to use `pass` or compatible like `gopass`
server = "news.example.com"
[headers]
from_header = "Your Name"
email_header = "you@example.com"
[display]
threaded_view = true
subscriptions file listing one newsgroup per line:alt.comp.lang.rust
comp.sys.ibm.pc.hardware
$SIGNATURE_FILE to point to your sig, or place ~/.signature.~/.signature:
Chris F.N. (ReK2)
https://rek2.hispagatos.org
gemini://rek2.hispagatos.org
You can also install via the Arch User Repository (AUR):
paru -S usenet_reborn-git
Before runing the client:
EDITOR and SIGNATURE_FILE you should add and export these variables on your .bashrc or equivalent.EDITOR=vim SIGNATURE_FILE="$HOME/.signature" ./target/release/usenet_reborn
you can copy the resulting binary to somewhere in your $PATH like ~/bin/usenet_reborn or /usr/local/bin/usenet_reborn
Usenet Reborn will look for its files in the standard OS locations first; if not found, it falls back to wherever you run the binary.
Config file (config.toml):
~/.config/usenet_reborn/config.toml~/Library/Application Support/ReK2/usenet_reborn/config.toml./config.toml)Subscriptions (subscriptions):
~/.config/usenet_reborn/subscriptions~/Library/Application Support/ReK2/usenet_reborn/subscriptions./subscriptions)Cache database (cache.sqlite3):
~/.cache/usenet_reborn/cache.sqlite3~/Library/Caches/ReK2/usenet_reborn/cache.sqlite3If any required file is missing, Usenet Reborn will exit with an error telling you exactly where to place it.
| View | Keys | Action |
|---|---|---|
| Global | Ctrl+h / Ctrl+l | Switch between Newsgroups ↔ Articles views |
| Ctrl+u | Update articles from server | |
| Groups | j / k | Move selection up/down |
| Enter | Load unread articles for selected newsgroup | |
| q | Quit | |
| Articles | j / k | Move selection up/down |
| Enter | Display article body | |
| Space | Toggle read/unread flag | |
| Ctrl+r | Mark all messages in selected newsgroup as read | |
| n | Compose new post (popup for newsgroups & subject) | |
| r | Reply to selected article | |
| q | Clear status / remain in Articles view | |
| Esc | Back to Newsgroups view | |
| Article | j / k | Scroll body up/down |
| o | Open links in external browser (xdg-open) |
|
| r | Reply to this article | |
| q / Esc | Back to Articles view | |
| Article Insert Mode | i | Enter Insert mode (move cursor freely) |
| v | Enter Visual mode (start text selection) | |
| h / j / k / l | Move cursor left / down / up / right | |
| y | Yank (copy) selected text to clipboard | |
| Esc (in Insert/Visual mode) | Exit mode |
When composing a new post (n) or replying (r) inside Articles view:
| Action | Keys |
|---|---|
| Switch field | Tab |
| Confirm | Enter |
| Cancel | Esc |
You'll then be dropped into your configured $EDITOR to write the body of the post.
config.toml: Usenet server and headers settings.subscriptions: One newsgroup per line.EDITOR: Which editor to use (default: nano).SIGNATURE_FILE: Path to signature file (defaults to ~/.signature).xdg-open: to open links on default external programs.cache.sqlite3) to store:
mailing list for patches and discussion sending email to ~rek2/Usenet_Reborn+subscribe@lists.sr.ht keep the case as Usenet_Reborn.~rek2/Usenet_Reborn@lists.sr.ht after you subscribe! keep the case as Usenet_Reborn.This project is licensed under the GPLv3. See LICENSE for details.
Happy Usenet-ing!