Skip to main content

Nyx

Private terminal messenger on Nostr over Tor.

Optimized for heavy censorship (Iran, Russia, …).

Install

pip install .

Run

nyx

First run auto-installs:

  • a private Tor binary
  • lyrebird (Snowflake + WebTunnel + obfs4)
  • Python dependencies
  • fresh bridges from multiple sources

No manual download required.

Censorship resistance (Iran)

Transport order (automatic fallback):

  1. Snowflake – WebRTC volunteer proxies, no bridge list needed
  2. WebTunnel – looks like normal HTTPS (currently strongest against Iranian DPI)
  3. obfs4 – classic obfuscation with freshly fetched bridges

If one transport is blocked or stuck, Nyx automatically switches to the next.

Bridges are pulled live from:

  • OnionHop tested lists (hourly)
  • official BridgeDB
  • community mirrors

Keys

Up/Down switch chat Enter send message Ctrl+N add contact (@username / npub / name@domain) Ctrl+E display name Ctrl+U @username (Telegram-style) Ctrl+G new group Ctrl+Y new channel Ctrl+K add member to current group/channel Ctrl+F send a file Ctrl+D download last file F2 change theme PgUp/PgDn scroll Esc/Ctrl+C quit

Groups & channels

  • Group (Ctrl+G): everyone can message; encrypted to all members
  • Channel (Ctrl+Y): only the owner can post; members receive
  • Add people with @username, npub, or name@domain

Message formatting

bold italic code strike multi-line code

Config

~/.nyx/key your nsec (chmod 600) ~/.nyx/profile.json display name, username ~/.nyx/contacts.json contact list ~/.nyx/tor/ private Tor datadir + torrc ~/.nyx/bin/ private Tor + lyrebird binaries

Override with env NYX_HOME=/some/path.

Note on total national blackouts

When international connectivity is completely cut (true nationwide shutdown), no software-only solution can reach the outside world. In those rare cases Starlink (or similar satellite) is currently the only practical option. As long as any path to the global internet remains, Nyx will keep trying every available transport automatically.

Metadata

Release files for nyxchat 0.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for nyxchat 0.3.1
File Size Uploaded
nyxchat-0.3.1.tar.gz 34.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for nyxchat 0.3.1
File Interpreter ABI Platform
nyxchat-0.3.1-py3-none-any.whl Python 3 none any Details

Total release size: 68.9 kB

Release files / nyxchat-0.3.1.tar.gz

Download URL nyxchat-0.3.1.tar.gz
Size 34.2 kB
Tags Source
SHA-256 checksum
How to use checksums
36a43c2318ff461b0e20d7bb3516027a3e129b0008cff9520108529972121df5
BLAKE2b-256 checksum
How to use checksums
5fb707bf45c620588f44fb84fac74b2e9b191dcb6e960edbabe279c29526b8bf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / nyxchat-0.3.1-py3-none-any.whl

Download URL nyxchat-0.3.1-py3-none-any.whl
Size 34.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1ef4b5d1f16f64d565e82ecb3f3439d2704d4faa6b1af476bd8ad50f685acdc1
BLAKE2b-256 checksum
How to use checksums
364443a99ce41ec83cdb934caf6de034219cd444be0c74a2b84be641cee0884e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release history Release notifications | RSS feed

0.3.10

1 release file

0.3.2

2 release files

This release

0.3.1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page