Skip to content

NIP-76: Reels Feed — Short-form Video Discovery and Interaction#2385

Open
anaskmh wants to merge 1 commit into
nostr-protocol:masterfrom
anaskmh:nip-76-reels-feed
Open

NIP-76: Reels Feed — Short-form Video Discovery and Interaction#2385
anaskmh wants to merge 1 commit into
nostr-protocol:masterfrom
anaskmh:nip-76-reels-feed

Conversation

@anaskmh

@anaskmh anaskmh commented Jun 18, 2026

Copy link
Copy Markdown

Summary

This PR proposes NIP-76, which defines the social and discovery layer for short-form vertical video feeds (Reels, Shorts, Stories) on top of the existing NIP-71 kind:22 / kind:34236 short video events.

NIP-71 already defines the video event format. NIP-76 defines what happens around those events:

  • Feed discovery — relay filter patterns for infinite-scroll Reels feeds (personalized via NIP-02 follow list, or topic-filtered via hashtags)
  • Client rendering spec — 9:16 aspect ratio, autoplay muted, loop, preload next
  • Duet interaction — side-by-side video reply (t: duet)
  • Stitch interaction — sequential clip-then-response video reply (t: stitch, stitch-start, stitch-end tags)
  • Reels curation listkind:30076 parameterized replaceable event for user-curated short video collections/playlists
  • Relay recommendations — index guidance and NIP-11 relay info field suggestion

Motivation

Instagram Reels, TikTok, and YouTube Shorts have proven short-form vertical video to be one of the most engaging content formats. Nostr has the event format (NIP-71) but lacks standardization for the feed UX and social interactions (duet, stitch) that make these platforms compelling. This NIP fills that gap without reinventing video events.

Relation to existing NIPs

NIP Relation
NIP-71 Extended — uses kind:22 and kind:34236 as base
NIP-92 Used — imeta tag for video metadata
NIP-10 Used — reply threading for duet/stitch
NIP-25 Compatible — reactions
NIP-57 Compatible — zaps
NIP-51 Extended — curation lists pattern

Open questions for reviewers

  • Should kind:30076 reuse an existing list kind from NIP-51 instead of a new kind?
  • Should stitch-start / stitch-end tags be namespaced differently to avoid conflicts?
  • Should client rendering requirements be MUST or SHOULD?

Defines the social and discovery layer for short-form vertical video
(Reels/Shorts) on top of NIP-71 kind:22/34236 events. Specifies feed
subscription patterns, client rendering requirements (9:16, autoplay,
loop), duet/stitch video reply interactions, reels curation lists
(kind:30076), and relay recommendations.
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