nostratui

June 10, 2025 ยท View on GitHub

A terminal user interface (TUI) for browsing Nostr posts, written in Rust.

nostratui demo banner

nostratui is a minimalist, responsive, and highly efficient terminal client for the nostr protocol.

Installation

Clone and Build

git clone https://github.com/adamm-xyz/nostratui.git
cd nostratui
cargo build

Config

You must create a config.json at:

~/.config/nostratui/config.json

Then, you can add your private key, the list of relays you use and public keys you follow.

{
    "key":"nsec1...",
    "relays":[
        "wss://myrelay.xyz",
        "wss://nostr.example.net"
    ],
    "contacts":[
        [
            "npub1...",
            "matthew"
        ],
        [
            "npub1...",
            "mark"
        ],
        [
            "npub1...",
            "luke"
        ]
    ]
}

Usage

Run

cargo run

Keybindings

keybindDescription
knavigate up
jnavigate down
Ctrl-rrefresh feed
ncreate new post
rreply to selected post
qquit

Roadmap

  • NIP-01, fetch and display basic notes
  • NIP-02, fetch follow list
  • Display contacts page
  • NIP-05 display user name handles
  • Key generation with NIP-06
  • NIP-08 display mentions in posts
  • NIP-09 issue delete requests
  • NIP-10 show note threads (still WIP)