# `@snort/nostr` A strongly-typed nostr client for Node and the browser. ## NIP support ### Applicable The goal of the project is to have all of the following implemented and tested against a real-world relay implementation. _Progress: 8/34 (23%)._ - [x] NIP-01: Basic protocol flow description - [x] NIP-02: Contact List and Petnames - [ ] NIP-03: OpenTimestamps Attestations for Events - [x] NIP-04: Encrypted Direct Message - [x] NIP-05: Mapping Nostr keys to DNS-based internet identifiers - [ ] NIP-06: Basic key derivation from mnemonic seed phrase - [ ] NIP-07: window.nostr capability for web browsers - [x] NIP-09: Event Deletion - [ ] NIP-10: Conventions for clients' use of `e` and `p` tags in text events - TODO Check if this applies - [x] NIP-11: Relay Information Document - [x] NIP-12: Generic Tag Queries - [ ] NIP-13: Proof of Work - [ ] NIP-14: Subject tag in text events - [x] NIP-15: End of Stored Events Notice - [ ] NIP-19: bech32-encoded entities - [x] `npub` - [x] `nsec` - [ ] `note`, `nprofile`, `nevent`, `nrelay`, `naddr` - [x] NIP-20: Command Results - [ ] NIP-21: `nostr:` URL scheme - [ ] NIP-23: Long-form Content - [ ] NIP-25: Reactions - [ ] NIP-26: Delegated Event Signing - [ ] NIP-27: Text Note References - [ ] NIP-28: Public Chat - [ ] NIP-36: Sensitive Content - [ ] NIP-39: External Identities in Profiles - [ ] NIP-40: Expiration Timestamp - [ ] NIP-42: Authentication of clients to relays - [ ] NIP-46: Nostr Connect - Not sure how much of this applies, but I sure would love to see WalletConnect disappear - [ ] NIP-50: Keywords filter - [ ] NIP-51: Lists - [ ] NIP-56: Reporting - [ ] NIP-57: Lightning Zaps - [ ] NIP-58: Badges - [ ] NIP-65: Relay List Metadata - [ ] NIP-78: Application-specific data - [x] NIP-94: File Header ### Not Applicable These NIPs only apply to relays and have no implications for a generic nostr client. - NIP-16: Event Treatment - NIP-22: Event `created_at` Limits - NIP-33: Parameterized Replaceable Events ### Others _If you notice an accepted NIP missing from both lists above, please [open an issue](https://github.com/v0l/snort/issues/new?assignees=&labels=&template=feature_request.md&title=) to let us know_.