Skip to content

feat: add NIP-65 (Relay List Metadata), NIP-25 (Reactions), and Marmot Protocol (kind 443/444/445) support #576

@CKodidela

Description

@CKodidela

Pledge
N/A — I am planning to implement this myself. @cameri would love your feedback before I start.

Is your feature request related to a problem? Please describe.
Nostream currently lacks support for three NIPs that are either widely used by clients or directly complement the NIP-17+44 work from #458:

  • NIP-65 leaves the DM relay routing incomplete clients have no standard way to discover which relay to deliver messages to for a given user
  • NIP-25 reactions are expected by virtually every nostr client but not explicitly handled
  • Marmot Protocol (kind 443/444/445) is the emerging standard for E2EE group messaging on nostr, and nostream would be one of the first relays to support it

Describe the solution you'd like

NIP-65 - Relay List Metadata (~1 day)

NIP-25 - Reactions (~1.5 days)

  • Accept and store kind:7 events
  • Validate e and p tag references per spec
  • No blocking dependencies

Marmot Protocol relay support (~2 days)

  • Accept and store kind:443 (KeyPackages), kind:444 (Welcome Messages), kind:445 (Group Events)
  • Relay stays transport-only no MLS logic needed
  • Advertise support in NIP-11
  • Pairs naturally with NIP-17+44 to form a complete private messaging stack

Describe alternatives you've considered
These could be split into 3 separate issues/PRs happy to do that if you prefer smaller, reviewable chunks.

Additional context
Estimated total: ~5 days. Plan is to open individual PRs for each, this issue is just to align before starting.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions