NDK is a comprehensive toolkit that handles all the complexity of building on nostr: relay management, caching, signing, subscription handling, and event verification. It lets developers focus on building features instead of reinventing protocol plumbing.
packages
- ndk-core — core functionality, relay pools, event handling
- ndk-svelte — Svelte 5 bindings with reactive stores
- ndk-react — React hooks for nostr
- ndk-mobile — React Native/Expo for iOS and Android
- ndk-wallet — NIP-60 wallet support
- ndk-cache-dexie — IndexedDB caching
- ndk-cache-redis — Redis caching for servers
- ndk-cli — command-line interface
- NDKSwift — Swift port for iOS/macOS
features
- Outbox model (NIP-65) for decentralized relay discovery
- Subscription queueing for efficient relay usage
- Automatic signature verification
- Blossom media support
- NIP-46 remote signing
- Event threading and replies
- Negentropy sync support
Used by Olas, Highlighter, Coracle, Primal, and dozens of other nostr clients.