Skip to content

feat: NIP-53 live streaming with discovery and chat#412

Merged
barrydeen merged 1 commit intomainfrom
feat/nip53-live-streaming
Apr 2, 2026
Merged

feat: NIP-53 live streaming with discovery and chat#412
barrydeen merged 1 commit intomainfrom
feat/nip53-live-streaming

Conversation

@barrydeen
Copy link
Copy Markdown
Owner

Summary

  • Live Now discovery pills at top of feed — ranked by active chatter count, with LIVE badge, streamer avatar, stream title, and chatter count
  • LiveStreamScreen with HLS video player, real-time chat, emoji reactions with reactor avatars, zaps with burst animations, swipe-to-reply, and 3-dot menu (follow/block/share/copy)
  • NIP-53 protocol layer (Nip53.kt) — parses kind 30311 live activities with streamer detection from Host p-tag role, builds kind 1311 chat messages
  • Smart relay targeting — fetches host's NIP-65 relay list on demand, prioritizes naddr relay hints and activity relay tags, uses inbox+outbox relays for chat subscriptions
  • Clickable embedded streamsnostr:naddr1 live stream cards in posts/threads/profiles navigate to the stream screen

Test plan

  • Feed shows "LIVE" pill row when streams have active chatters
  • Tapping a pill opens LiveStreamScreen with video + chat loading
  • Chat messages load from streamer's relays with full history
  • Can send chat messages and see them appear
  • Swipe-to-reply, emoji reactions, and zaps work
  • 3-dot menu: follow/block, share, copy note ID/JSON/text
  • Embedded nostr:naddr1 live stream cards are clickable → open stream
  • Back navigation returns to feed
  • Pills rank by chatter count, most active first

Implement live stream discovery and viewing:
- Nip53.kt protocol layer with LiveActivity parsing and chat message building
- LiveStreamRepository for stream tracking, chatter counting, and chat state
- LiveNowRow with LIVE badge and pills ranked by active chatters
- LiveStreamScreen with video player, chat, reactions, zaps, and reply threading
- Global discovery subscription (kind 1311) for ranking active streams
- Per-stream chat subscriptions targeting host inbox/outbox + relay hints
- Clickable LiveStreamCard embeds in posts navigate to stream screen
@barrydeen barrydeen merged commit 235dbc4 into main Apr 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant