Das Nostr-Relay, das nie ausfällt.
nostrfy ist eine All-in-One-Nostr-Relay-Server-Engine. Blitzschnell per Design, schlank von Natur aus, leistungsstark als Standard. Installation in einer Zeile, Konfiguration über eine einzige TOML-Datei und Betrieb auf praktisch jedem VPS.
Installation in einer Zeile
Das Installationsskript erkennt Ihr Betriebssystem und Ihre Architektur, lädt das passende vorgefertigte Binary herunter, verifiziert dessen sha256-Prüfsumme und legt es in PATH ab. Kein Klonen, kein Bauen, kein sudo.
curl -fsSL https://raw.githubusercontent.com/iqbqioza/nostrfy/main/install.sh | shohne sudo
Installiert nach ~/.local/bin, ~/bin oder ~/.cargo/bin — das erste davon, das bereits im PATH liegt.
Linux + FreeBSD
Vorgebaute Binaries für x86_64- und aarch64-Linux sowie FreeBSD x86_64.
Prüfsummenverifiziert
Die Release-Prüfsumme wird abgerufen und verifiziert, bevor das Binary die Festplatte berührt.
VERSION=v0.1.16 curl -fsSL https://raw.githubusercontent.com/iqbqioza/nostrfy/main/install.sh | shINSTALL_DIR=/usr/local/bin sudo curl -fsSL https://raw.githubusercontent.com/iqbqioza/nostrfy/main/install.sh | shcurl -fsSL https://raw.githubusercontent.com/iqbqioza/nostrfy/main/install.sh | sh -s -- --forcegit clone https://github.com/iqbqioza/nostrfy.git && cd nostrfy && cargo build --releaseMigration von strfry?
Bringen Sie Ihre vorhandenen Events mit einem Befehl mit — offline, verifiziert und gefahrlos wiederholbar.
In unter einer Minute einsatzbereit
nostrfy liefert einen Daemon, einen Konfigurationsvalidator, Live-Statistiken, Log-Rotation und Hot-Reload — alles, was ein Relay-Betreiber braucht, in einem Binary.
- nostrfy init schreibt eine vollständig kommentierte Standard-nostrfy.toml
- nostrfy check validiert die Konfiguration vor dem Start
- SIGHUP lädt die meisten Einstellungen ohne Neustart neu
- nostrfy upgrade aktualisiert das Binary auf die neueste Version
nostrfy init
# schreibt eine Standard-nostrfy.toml und beendet sichnostrfy start
# startet das Relay als Daemonnostrfy stats
# Verbindungen, Events, Datenbankgrößecurl http://localhost:8080/health
# {"status":"ok"}Richten Sie Ihren Nostr-Client auf ws://<host>:8080 — fertig.
Für Relays im echten Betrieb
Jede Funktion folgt zwei Zielen: nie auszufallen und vollständig Spec-konform zu sein. Das Ergebnis ist ein Relay, das Angriffe, hängende Festplatten und speicherarme Hosts übersteht.
Vollständig Spec-konform
Alle Relay-seitigen NIPs implementiert und gegen die offiziellen Spezifikationen verifiziert — 36+ NIPs plus der Blossom-Dateiserver.
Fällt nie aus
Überlastschutz, dedizierte Reader-Threads, Panic-Isolierung und strikte Ressourcengrenzen halten das Relay auch unter Dauerlast am Laufen.
Blossom-Mediaserver
SHA-256-adressierte Uploads auf eigenem Hostnamen — lokale Festplatte oder S3-kompatible Buckets (AWS S3, Cloudflare R2), mit vom Eigentümer signierten Löschvorgängen.
REST-API
Ein schreibgeschütztes /api/v1 für Abfragen per npub1, nevent1 oder naddr1 — durch einen eigenen Reader-Thread kann REST-Verkehr WebSocket-Abonnenten nie blockieren.
LMDB-Persistenz
Langlebiger, absturzsicherer Speicher über heed. Die Speicherzuordnung wird bis zur Obergrenze dünn reserviert — keine Größenänderung zur Laufzeit, winziger physischer Fußabdruck.
Alles konfigurierbar
Jede Einstellung liegt in nostrfy.toml — keine Kompilierungsoptionen. Bearbeiten, SIGHUP, fertig. Limits, NIP-Schalter, Speicher und mehr.
Läuft hinter TLS-Proxys
nginx, Caddy, Cloudflare Tunnel — WebSocket-Upgrades und X-Forwarded-Proto werden berücksichtigt, wss:// funktioniert hinter jedem Proxy.
Rust + FreeBSD
Ein einzelnes statisches Rust-Binary für Linux x86_64, Linux aarch64 und FreeBSD x86_64 — verifiziert auf einem VPS mit 0,25 vCPU / 512 MB.
Gemessene Leistung
Release-Build, frische Datenbank, Laptop mit 8 Threads. Die Schreibgeschwindigkeit wird von einem einzigen LMDB-Writer-Thread und gebündelten, fsync-freien Commits begrenzt; Reader blockieren ihn nie.
Mit den mitgelieferten Benchmarks reproduzierbar — siehe Leistungshinweise.
Vollständige NIP-Unterstützung nach Spezifikation
Jeder Relay-seitige NIP ist implementiert und verifiziert. Die in NIP-11 veröffentlichte Liste ist dynamisch — ein NIP fällt automatisch heraus, wenn seine Kinds blockiert werden.
Ein Ökosystem großartiger Clients
nostrfy spricht die offenen NIP-Standards, auf die sich Clients verlassen — die besten Nostr-Apps werden einfach angeschlossen und erhalten das volle Erlebnis. Jeder NIP-konforme Client funktioniert mit Ihrem Relay.
Ditto nutzt diese NIPs tatsächlich — NIP-50-Suche, NIP-22-Thread-Kommentare, NIP-57-Zaps, NIP-94-Medien und NIP-85-Statistiken gehören zum Alltag — und jede davon entspricht einer Relay-Funktion von nostrfy.
Ein voll ausgestatteter Client, der diese NIPs tatsächlich nutzt — NIP-50-Suche, NIP-17/59-Direktnachrichten, NIP-57-Zaps, NIP-88-Umfragen und Blossom-Medien funktionieren mit Ihrem Relay.
Entwickeln Sie auf Nostr? Richten Sie jeden Client auf Ihr Relay — siehe Vollständige NIP-Referenz.
Betreiben Sie Ihr eigenes Relay in Minuten
Vom winzigen VPS bis zum globalen Verbund — das vorgefertigte Binary, der Konfigurationsvalidator und die Bereitstellungsanleitungen machen es mühelos.
Fragen? FAQ oder den Vergleich von nostrfy mit strfry — und migrieren Sie mit einem Befehl.