awesome-nostr/README.md
2023-03-24 16:36:31 -04:00

43 KiB
Raw Blame History

"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

  • NNostrstars - a C# relay
  • nostr-rs-relay - a minimalistic relay written in Rust that saves data on SQLite
  • Relayer Basic - a simple relay based on relayer backed by Postgres
  • nodestrstars - a Node.js implementation
  • sovereign-stack - a tool that helps you deploy nostr relays and create self-hosted (bitcoin-only) Value4Value websites.
  • expensive relaystars- a relay that requires payment for registration
  • me.untethr.nostr-relaystars - a relay written in Clojure
  • Minds Nostr Relay - a relay for Minds, an open-source social network
  • NostrPostr Relay - a Kotlin Relay supporting both SQLite and Postgresql
  • nostrpystars - relay, client, and other tooling in python
  • nostreamstars - a nostr relay written in Typescript backed by PostgreSQL (renamed from nostr-ts-relay)
  • nostr_relay a nostr relay written in python, backed by SQLite
  • søstrstars a private nostr relay written in rust, saves all notes from one pubkey and publish them to anyone that requests them
  • knostrstars a nostr relay implemented in Kotlin with support for Postgres and metrics(micrometer).
  • PyRelaystars a python implementation of a nostr relay, using asyncio.
  • strfrystars C++ implementation backed by LMDB with efficient syncing of events using merkle trees
  • Astrostars Elixir based implementation built to be performant and highly distributed.
  • Nex stars - A powerful and scalable Nostr relay written in Elixir with Postgres DB.
  • gnost-relay stars - nostr relay written in go backed by postgresql database.
  • nostringstars - A Nostr relay written in Deno.
  • Denostrstars - Deno based, cloud native nostr implemention support by ByteTrade and Revo.
  • nostr-relay-nestjsstars - A Nostr relay implemented using the NestJS framework

Instances

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

Clients

  • Astralstars - a branle fork with global feed and UI makeover
  • damusstars - a twitter-like nostr client for iOS and MacOS
  • more-speechstars - desktop client for nostr written in Clojure
  • futrstars - nostr client desktop app written in Haskell
  • Minds - open source social network. Supports reading and creating posts using the Nostr protocol
  • Jester stars - Chess over nostr
  • Sendstr stars - shared clipboard between devices over nostr
  • nosbinstars - pastebin over nostr
  • nosclstars - a basic command-line client written in Go
  • loquazstars - a desktop app written in Rust for direct encrypted chat
  • nostr consolestars - a nostr command line client written in Dart. Binaries available for Windows, Linux, and MacOS
  • ArcadeCitystars - Public group chats and P2P services (WIP) over nostr
  • second exchangestars - an experiment to work out something of like medium, something of creator economy where users are rewarded for engaging in quality discussion and most importantly engaging in governance-related discussion
  • scalastrstars - A barebones nostr client written in scala
  • Nostrosstars - A nostr mobile client for Android
  • Nostrify.mestars - Nostr client built in SvelteKit.
  • NostrEmitterstars - Simple E2E encrypted client and EventEmitter object
  • Lightning.Pubstars - A nostr daemon for Lightning nodes
  • shockwalletstars - A Lightning wallet that uses nostr and lnurl to connect to nodes
  • coraclestars - A nostr web client
  • nostrweb - another nostr web client in vanilla JS
  • Bijastars - A desktop client written in python. Currently Linux only
  • Noskystars - A native Android client for Nostr. Still in development
  • Stackerstan - starsA decentralised organisation built on Bitcoin and Nostr, implemented as a replicated state machine in Golang
  • nostr-javastars - A nostr client API written in java, for generating, signing and publishing events to relays
  • bolt.fun - A bitcoin lightning makers community that supports reading and creating comments using Nostr
  • irisstars - A nostr web client
  • gossipstars - A desktop client in rust presented with egui
  • Attachedstars - Open-Source ReactNative Expo app for Nostr (iOS, Android). Currently under app stores review.
  • Memberstars - Progressive Web App Client. Works on desktop and mobile.
  • disputestars - A cross-platform (Linux, Android, iOS, MacOs, Windows and Web) client for NOSTR
  • Snortstars - Nostr UI written in react
  • Hamstrstars - A twitter-style web client built with Vue.js
  • Nozzlestars - A Twitter-like native Android client written with Jetpack Compose
  • electron-nostrstars - A bare-bones desktop nostr client using electron-react-boilerplate. Goal is to be an easy template for people to experiment with different ideas on decentralized ratings, reputation, and web of trust
  • Nostridstars - Multi-platform client currently offering binaries for Android, Windows, MacOS and Linux.
    • Nostrid.Web - Web version running completely on the browser. It can be installed locally as PWA.
  • nostr-chat-widget-react - A React component that provides a live-chat widget over nostr that can be embedded into any website.
  • Blockcore Notes stars - Progressive Web App that can be installed on mobile and desktop, organize following in circles and have both public and private following lists. Dynamic interface for different uses, such as optimized for photograph viewing.
  • Noteonstars - Yet another nostr client focused on private chat and group chat with a simple, elegant and secure interface.
  • emonstars - Encrypted DMs over nostr with lightning payments integrated (WIP).
  • notebin.orgstars - Nostr UI created with NextJS, support for markdown and code highlighting
  • Daisy - Mobile client for Android and iOS
  • Flycatstars - A 2000s old-school style web client which support blogging on Nostr
  • Amethyststars - An Android client for nostr written in Kotlin
  • MeShellstars - Web, iOS and Android blog type client destined to publish articles and researches for independent journalists.
  • Disgusstars - A comment widget like Disqus, but for Nostr.
  • Tamgastars - An offline first nostr contact & profile manager for iOS!
  • nostromatstars - A Twitter-style Nostr web client, written in Clojurescript/React
  • blogstack.iostars - Blogging site for nostr, supports markdown
  • Votestrstars - Poll web app with nostr authentication and blind signature unlinkability
  • gnost-deflate-clientstars CLI nostr client written in go implementing permessage-deflate websocket compression.
  • algiastars - A cli application for nostr.
  • algia-webstars - A small resource consumption oriented Nostr web client.
  • Blowater - A desktop Web client focusing on chat with delightful UX.
  • Writtenstars Self hosted blog using nostr long-form content (NIP-23) and it shows only posts by selected authors.
  • Nostr Nests - Nostr Nests is an audio space for chatting, brainstorming, debating, jamming, micro-conferences and more.
  • nblogstars - a self-host nostr ghost blog
  • Nostribe.com stars - Nostr client web app built with Next.js 13 and TypeScript.

Client reviews and/or comparisons

Libraries

  • nostr-rubystars - a Ruby implementation of the nostr protocol
  • nostrstars - a Ruby Nostr gem for use by clients
  • NNostr.Clientstars - a C# Nostr library for use by clients
  • nostr-toolsstars - a JavaScript client that abstracts the relay management code for use by clients
  • nostr-relaypool-tsstars - a TypeScript relay pool library on top of nostr-tools that simplifies handling subscriptions to multiple servers
  • nostr-reactstars - React Hooks for Nostr
  • go-nostrstars - a Go library that implements relay management, plus event encoding and signing utils
  • nostr_ruststars - Functional Rust implementation of the nostr protocol
  • nostr-jsstars - a javascript implementation of the nostr protocol
  • nostr-rsstars - a Rust implementation of the nostr protocol
  • nostrstars:
    • nostr: Rust implementation of Nostr protocol.
    • nostr-sdk: High level client library.
    • bindings: UniFFI (Kotlin, Swift, Python, Ruby) bindings
  • relayerstars - a server framework for writing custom relays
  • NostrPostrstars - a Kotlin Nostr library for clients or relays
  • python-nostrstars - a python library for making clients
  • nostr-botstars - a Rust library for writing bots
  • NostrKitstars - a Swift library for interacting with relays
  • nostr-relay-inspectorstars - A library that returns useful information about relays based on nostr-js
  • schorr_snapstars - A snap plugin for Metamask Flask, supports nostr
  • nostr-denostars - a client library for Deno javascript runtime.
  • nostr-typesstars - a rust library defining types useful for the nostr protocol
  • dart-nostrstars - a Dart library for Flutter
  • nostr-connectstars - Nostr Connect SDK for TypeScript is a library that allows you to easily integrate Nostr Connect into your web application
  • pynostrstars - a python library for nostr
  • nostr-phpstars - a PHP library for nostr

Bridges and Gateways

  • rsslaystars - fork of the rsslay by @fiatjaf. a bridge that puts RSS feeds into Nostr optimized, more funcionalities and UI improvements. Live at rsslay.nostr.moe
  • smtp nostr gateway stars - a bridge that forwards emails to pubkeys as encrypted direct messages
  • matrix-nostr-bridgestars a simple Matrix-to-Nostr or Nostr-to-Matrix bridge
  • Mostrstars - a bridge between Nostr and the Fediverse (Mastodon, ActivityPub, etc.)

Tools

  • nostrich.funstars - A feature-rich directory of nostr projects. A fork of LightningNetworkStores.com
  • 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-fzfstars - Nostr Directory; a tool for searching usernames and channels
  • nostr-notifystars - 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 extensionstars - a browser extension for signing events on 3rd party site without sharing your private keys with them
  • nostr GitHub Actionstars - send events from GitHub Actions
  • nostrefreshstars - simple refresh function for nostr web pages
  • anonroomstars - anonymous chat room inside nostr
  • nostrilstars - C cli tool for creating nostr events
  • nostr-rs-relay-composestars - a Docker compose deployment for nostr-rs-relay with SSL support based on Traefik
  • tostrstars - a twitter to nostr bot
  • nostr.guru - a nostr web gateway for viewing events by their ID
  • nostrandom.netlify.app - generate publish-able Nostr event with random keys
  • nashboardstars - a Nostr network dashboard with network statistics, reachable here
  • nostr army knife - nostr army knife by fiatjaf
  • joinstrstars - coinjoin implementation using nostr
  • ndxstrstars - nostr's layer 2 indexing nodes, with more advanced querying capability than currently supported by relays
  • nostrillerystars - a tool for running performance tests against Nostr relays
  • nostr-terminalstars - SSH-like access to your machine via web terminal, powered by Nostr.
  • nostcatstars - cat-like nostr client for scripting and debugging written in Rust
  • nostreqstars - Nostr relay event request generator
  • nostr.io - network statistics with last published notes, top 50 publishers, and top 50 followed users
  • nostr-commanderstars - simple but convenient CLI-based Nostr app for following users, sending DMs, etc.
  • nostr.directorystars - searchable database of nostr users and their other social media links.
  • nostr-toolstars - Rust CLI tool to generate and publish events
  • frostrstars - Create joint nostr identities and require t-of-n signatures to post
  • nostr.rest - Mine proof of work public keys with user specified prefixes
  • lnpassstars - A key manager for Lightning and nostr.
  • sb.nostr.band - Search bots that you can create and follow to receive new posts matching a keyword right into your feed.
  • rss.nostr.band - Create custom RSS feeds with posts matching your keywords and consume using your favorite RSS reader.
  • nostrview - A nostr search engine. Search by content, tags, events or pub keys.
  • nostr-bulk-dmsstars - A tool that allows you to send DMs over nostr to many recipients in bulk.
  • nostrifystars - A Core Lightning plugin that sends events (forwards, connect, disconnect, etc.) to nostr.
  • nip06-webstars - a website to generate or restore NIP-06 seed phrases
  • nip06-clistars - a Node.js CLI to generate or restore NIP-06 seed phrases
  • nostr-broadcaststars This tool lets you take your events from some relays and broadcast them to another relay. Could be helpful for backing up your notes to a private relay.
  • nostr-follow-bundlerstars This tool lets you create lists of profiles that other users can then see and follow themselves.
  • nostr-proxystars - Push and get events to your Proxy, get results from multiple Nostr relays.
  • nostrendsstars - Trending on Nostr, like Twitter trends. Live at nostrends.vercel.app.
  • homebrew-nostrstars - Homebrew tap for Nostr software.
  • heyxynip5stars - A CLI helper for converting nostr npub/nsec to their hex format for NIP-05 verification.
  • http-nostr-publisherstars - A Cloudflare worker to publish Nostr events to relays through a non-blocking HTTP interface .
  • blastrstars - A nostr cloudflare workers proxy relay that publishes to all known relays.
  • keystr-rsstars - An application for managing Nostr keys. Written in Rust, with simple UI (Iced).
  • nostr_simple_publish- Drupal module to publish content to Nostr.
  • nostr-spam-detectionstars - An experiment in building a machine learning model to label Nostr spam content for filtering and relay rejection.
  • blogsyncstars - Self-host blog articles from long-form notes e.g. via Caddy server.
  • NostrFlustars - A tool to collect and resend following lists from relays. You can also check badges.
  • nkclistars - A CLI tool for nostr key manage and serve NIP-46.
  • git-nostrstars - A tool to enhance git cli with nostr communications. Publish patch content, prs, repo name, issues, etc to nostr relay.
  • nostr-wtfstars - A set of nostr tools available and deployed on a web app including a pubkey converter and relay query tool.
  • powrelay.xyz - A proof of work based nostr explorer.

NIP-05 identity services

Offline signer

  • keechainstars - Bitcoin application to transform your offline computer in an AirGap Signing Device (aka Hardware Wallet) with support to NIP-06 and NIP-26.
  • nostrumstars - Nostrum it's a mobile app that allows you to sign transactions and messages with your Nostr keys. Nostrum is the reference implementation for a remote signer app (ie. Wallet) of the Nostr Connect protocol.
  • nostr-signing-device - Signing device for Nostr built on ESP32

Vanity pubkey mining

  • nostr-pubminerstars - A simple tool to mine nostr vanity pubkeys
  • ranastars - Vanity pubkey miner based on nip13
  • glasnostr stars - CLI tool to mine a vanity prefix for your nostr npub
  • nostrogenstars - simple web based nostr vanity address generator
  • nostr-vanity-address-generator stars - Cross-platform nostr vanity address generator
  • go-pubmine stars - Multithreading nostr keypair generator which gives pretty (vanity) public keys. Both cli and web app are available.
  • key-generator stars - A simple tool to generate nostr keypair.

Browser extensions

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

  • Albystars - Bitcoin Lightning app with nostr support
  • Flamingo - Nostr browser extension with a focus on UX
  • nos2xstars - Nostr Signer Extension
  • wenstars - browser extension for website enhancer with nostr
  • Blockcorestars - Multi wallet browser extension with nostr support
  • Nostore - Nostr Signer Extension for iOS/macOS Safari
  • nostr-keyxstars - A NIP-07 browser extension that uses the OS's keychain or YubiKey to protect your private keys.

Community

Outside of nostr itself, you find the community on:

Tutorials

Deprecated

  • branlestars - a Twitter-like client that was discontinued but lives on in its fork "Astral".
  • anigma.io - has known xss attack vulnerabilities, which can put private key at risk, or risk signing events you may not want to send.
  • nvote - it does server side processing, and even private key is handled server side, and as such is deprecated for normal use.
  • alphaama.com - is under maintenance as of late 2022.
  • rsslaystars - a bridge that puts RSS feeds into Nostr

Data for this list is contributed by the community and curated by @aaaljaz ( npub1aljazgxlpnpfp7n5sunlk3dvfp72456x6nezjw4sd850q879rxqsthg9jp)