2023-02-07 17:04:19 -06:00
2023-02-07 17:04:18 -06:00
2023-02-07 17:04:18 -06:00
2023-02-07 17:04:18 -06:00
2023-02-07 17:04:19 -06:00
2023-02-07 17:04:17 -06:00
2023-02-07 17:04:18 -06:00
2023-02-07 17:04:18 -06:00
2023-02-07 17:04:18 -06:00
2023-02-07 17:04:19 -06:00
2023-02-07 17:04:18 -06:00
2023-02-07 17:04:18 -06:00
2023-02-07 17:04:18 -06:00
2023-02-07 17:04:18 -06:00

Personal Nostr Client

Current Features

  • Home feed
  • Discovery Feed
  • Dark theme
  • Preview twitter / youtube links
  • Lighting invoices
  • Blurred or hidden images and embeds for people you dont follow
  • Thread view
  • Profile management
  • Make post
  • Relay management
  • NIP-05 support
  • Broadcast event
  • Manage followers
  • Image upload
  • User tipping
  • Reactions
  • "Read more" Button for long posts
  • Dynamically connect to relays (start with one relay then connect to others as required)
  • Reporting users and events
  • Blocking users
  • Notifications

Supported NIPs

  • NIP-02: Contact List and Petnames
  • NIP-03: OpenTimestamps Attestations for Events
  • NIP-04: Encrypted Direct Message
  • 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
  • NIP-08: Handling Mentions
  • NIP-09: Event Deletion
  • NIP-11: Relay Information Document
  • NIP-12: Generic Tag Queries
  • NIP-13: Proof of Work
  • NIP-14: Subject tag in text events.
  • NIP-15: End of Stored Events Notice
  • NIP-19: bech32-encoded entities
  • NIP-20: Command Results
  • NIP-21: nostr: URL scheme
  • NIP-25: Reactions
  • NIP-26: Delegated Event Signing
  • NIP-33: Parameterized Replaceable Events
  • NIP-36: Sensitive Content
  • NIP-40: Expiration Timestamp
  • NIP-42: Authentication of clients to relays
  • NIP-50: Keywords filter
  • NIP-56: Reporting

TODO

  • add relay selection to global feed and allow user to specify custom relay
  • add client tag to published events
  • add relay selection to global feed
  • add button for creating lightning invoice via WebLN
  • setup deploy to s3
  • make app a valid web share target https://developer.chrome.com/articles/web-share-target/
    • make app handle image files
  • block notes based on content
  • implement NIP-56 and blocking
  • allow user to select relay or following list when fetching replies (default to my relays + following?)
  • filter list of followers by users the user has blocked/reported (stops bots/spammers from showing up at followers)

Setup

yarn install && yarn start
Description
A sandbox for exploring nostr
Readme MIT 136 MiB
Languages
TypeScript 99.4%
Shell 0.1%
Swift 0.1%