https://github.com/rust-nostr/nostr
Rust implementation of the nostr protocol, high-level client library, Nostr Wallet Connect and more.
https://github.com/rust-nostr/nostr
flutter freedom nostr nostr-connect nostr-protocol nwc protocol python rust rust-lang rust-nostr sdk swift typescript
Last synced: 9 days ago
JSON representation
Rust implementation of the nostr protocol, high-level client library, Nostr Wallet Connect and more.
- Host: GitHub
- URL: https://github.com/rust-nostr/nostr
- Owner: rust-nostr
- License: mit
- Created: 2022-11-08T08:57:33.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2025-04-08T09:36:05.000Z (12 days ago)
- Last Synced: 2025-04-10T23:13:04.561Z (9 days ago)
- Topics: flutter, freedom, nostr, nostr-connect, nostr-protocol, nwc, protocol, python, rust, rust-lang, rust-nostr, sdk, swift, typescript
- Language: Rust
- Homepage: https://rust-nostr.org/
- Size: 14.6 MB
- Stars: 475
- Watchers: 15
- Forks: 117
- Open Issues: 23
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Security: SECURITY.md
Awesome Lists containing this project
- awesome-nostr - rust-nostr - nostr/nostr.svg?style=social): (Libraries / Client reviews and/or comparisons)
- awesome-rust-list - rust-nostr/nostr - nostr/nostr?style=social"/> : Nostr protocol implementation, SDK and FFI. (Web3 and ZKP Framework)
- awesome-rust-list - rust-nostr/nostr - nostr/nostr?style=social"/> : Nostr protocol implementation, SDK and FFI. (Web3 and ZKP Framework)
README
# Nostr
## Project structure
The project is split up into several crates in the `crates/` directory:
* Libraries:
* [**nostr**](./crates/nostr): Rust implementation of Nostr protocol
* [**nostr-connect**](./crates/nostr-connect): Nostr Connect (NIP46)
* [**nostr-database**](./crates/nostr-database): Database for Nostr apps
* [**nostr-lmdb**](./crates/nostr-lmdb): LMDB storage backend
* [**nostr-ndb**](./crates/nostr-ndb): [nostrdb](https://github.com/damus-io/nostrdb) storage backend
* [**nostr-indexeddb**](./crates/nostr-indexeddb): IndexedDB storage backend
* [**nostr-keyring**](./crates/nostr-keyring): Nostr Keyring
* [**nostr-relay-pool**](./crates/nostr-relay-pool): Nostr Relay Pool
* [**nostr-sdk**](./crates/nostr-sdk): High level client library
* [**nwc**](./crates/nwc): Nostr Wallet Connect (NWC) client
* Binaries (tools):
* [**nostr-cli**](./crates/nostr-cli): Nostr CLI### Embedded
**nostr** crate can be used in [`no_std`](https://docs.rust-embedded.org/book/intro/no-std.html) environments.
Check the example in the [`embedded/`](./crates/nostr/examples/embedded) directory.## Book
Learn more about `rust-nostr` at .
## State
**These libraries are in ALPHA state**, things that are implemented generally work but the API will change in breaking ways.
## Donations
`rust-nostr` is free and open-source. This means we do not earn any revenue by selling it. Instead, we rely on your financial support. If you actively use any of the `rust-nostr` libs/software/services, then please [donate](https://rust-nostr.org/donate).
## License
This project is distributed under the MIT software license - see the [LICENSE](LICENSE) file for details