awesome-nostr/README.md
2022-12-15 15:20:45 +01:00

11 KiB

awesome-nostr

"nostr" stands for "Notes and Other Stuff Transmitted by Relays" and is an open protocol for censorship-resistant global networks created by @fiatjaf.

Protocol

Relays

Relays are (so far) application agnostic. You can run your own or use any or all of the public instances.

Implementations

Instances

Instances are plenty and their availability may vary but these projects track them:

  • nostr relay registry - real-time checking of status of some known relays
  • nostr.info - real-time checking of status of some known relays
  • nostr.watch - real-time checking of status of some known relays with advanced checks.

Clients

  • branle - a Twitter-like client with chat. Some instances:
  • astral - a branle fork with global feed and UI makeover
  • damus - a twitter-like nostr client for iOS and MacOS
  • more-speech - desktop client for nostr written in Clojure
  • futr - nostr client desktop app written in Haskell
  • nvote, Nvote is a decentralized, vote-driven community similar to services like Reddit and HackerNews. Nvote is powered by nostr
  • Minds - open source social network. Supports reading and creating posts using the Nostr protocol
  • alphaama - playground by Tiago Balas
  • Jester - Chess over nostr
  • Sendstr - shared clipboard between devices over nostr
  • noscl - a basic command-line client written in Go
  • loquaz - a desktop app written in Rust for direct encrypted chat
  • nostr console - a nostr command line client written in Dart. Binaries available for Windows, Linux and MacOS.
  • anigma - A clone of telegram built on nostr
  • ArcadeCity - Public group chats and P2P services (WIP) over nostr
  • second exchange - an experiment to work out something of like medium , something of creator economy where users are rewarded for engaging quality discussion and most importantly engaging in governance related discussion.
  • scalastr - A barebones nostr client written in scala
  • Nostros - A nostr mobile client for Android
  • NostrEmitter- Simple E2E encrypted client and EventEmitter object.
  • Lightning.Pub- A nostr daemon for Lightning nodes.
  • shockwallet- A Lightning wallet that uses nostr and lnurl to connect to nodes.
  • coracle - A nostr web client
  • nostrweb - another nostr web client in vanilla JS
  • Bija - A desktop client written python. Currently Linux only.
  • Nosky - A native Android client for Nostr. Still in development.

Client reviews and/or comparisons

Libraries

  • NNostr.Client - a C# Nostr library for use by clients
  • nostr-tools - a JavaScript client that abstracts the relay management code for use by clients
  • go-nostr - a Go library that implements relay management, plus event encoding and signing utils
  • nostr_rust - Functional Rust implementation of the nostr protocol
  • nostr-js - a javascript implementation of the nostr protocol
  • nostr-rs - a Rust implementation of the nostr protocol
  • nostr-rs-sdk - Nostr protocol implementation, SDK and FFI written in Rust
  • relayer - a server framework for writing custom relays
  • NostrPostr - a Kotlin Nostr library for clients or relays
  • python-nostr - a python library for making clients
  • nostr-bot - a Rust library for writing bots
  • NostrKit - a Swift library for interacting with relays
  • nostr-relay-inspector - A library that returns useful information about relays based on nostr-js

Bridges and Gateways

Tools

  • git-nostr-tools - A cli tool for sending code patches over nostr
  • nostr-cln-events - A CLN plugin to push clightning node events to nostr
  • nostr registry - a database of known relays with their uptime and NIP support tables
  • nostr-fzf - Nostr Directory; a tool for searching usernames and channels
  • nostr-notify - desktop nostr notifications using libnotify
  • nostr-launch - a tool for launching a bunch of relays and clients locally for development and testing
  • nos2x - nostr signer extension - a browser extension for signing events on 3rd party site without sharing your private keys with them
  • nostr GitHub Action - send events from GitHub Actions
  • wen - browser extension for website enhancer with nostr
  • nostrefresh - simple refresh function for nostr web pages
  • anonroom - anonymous chat room inside nostr
  • nostril - C cli tool for creating nostr events
  • nostr-rs-relay-compose - a Docker compose deployment for nostr-rs-relay with SSL support based on Traefik
  • tostr - a twitter to nostr bot
  • nostr.com - a nostr web gateway for viewing events by their ID
  • nostrandom.netlify.app - generate publish-able Nostr event with random keys
  • nashboard and here - a Nostr network dashboard with network statistics
  • nostr army knife - nostr army knife by fiatjaf
  • joinstr - coinjoin implementation using nostr
  • ndxstr - nostr's layer 2 indexing nodes, with more advanced querying capability than currently supported by relays
  • nostrillery - a tool for running performance tests against Nostr relays
  • nostr-terminal - SSH-like access to your machine via web terminal, powered by Nostr.
  • nostcat - cat-like nostr client for scripting and debugging written in Rust
  • rana - Nostr mining pubkey with multi threading
  • nostreq - Nostr relay event request generator
  • nostr.io - network statistics with last published notes, top 50 publishers and top 50 followed users
  • nostr-commander - simple but convenient CLI-based Nostr app for following users, sending DMs, etc.

Browser extensions

Allow you to sign Nostr events on web-apps without having to give them your keys.

  • Alby - Bitcoin Lightning app with nostr support
  • nos2x - Nostr Signer Extension

Community

Outside of nostr itself, you find the community on: