Watch
Open `/browse` or home cards, then watch from `/watch/:npub/:streamId` with WHEP-first and HLS fallback.
Technical Documentation
Updated reference for the current stack: Nostr identity, WHIP/WHEP/HLS media path, P2P assist policy controls, and wallet-integrated payment flows.
Open `/browse` or home cards, then watch from `/watch/:npub/:streamId` with WHEP-first and HLS fallback.
Use extension or local key in Settings. Canonical stream identity is `(pubkeyHex, streamId)`; UI routes are npub-first.
Open `/broadcast`, start preview, publish over WHIP, and confirm announce relay acceptance.
Check rail status in Settings, execute a wallet payment, and verify its durable payment intent before granting paid access.
Nostr relays carry announce, moderation, presence, profile, and DM/whisper signaling.
WHIP ingest to MediaMTX, remux to HLS, expose WHEP endpoints, maintain origin fallback.
WebRTC datachannel assist can offload HLS delivery when host policy and stake conditions allow.
This deployment publicly accepts Monero, Bitcoin Lightning, and Bitcoin on-chain payments. Additional protocol adapters can remain backend-connected for real-chain operator checks without becoming public payment options.
Nostr identity/discovery + WHIP/WHEP/HLS media stack + optional WebRTC assist queue (`host_only` vs `p2p_economy`) + intent-bound multi-rail settlement.
NIP-53-focused Nostr client with Lightning/Zap ecosystem alignment and a host/CDN-style media path centered around HLS/RTMP workflows.
Detailed comparison notes are maintained in repository docs:docs/COMPETITIVE_DELTA.md
| Kind | Purpose | Notes |
|---|---|---|
| 30311 | Stream announce | Replaceable live metadata (`d`, `title`, `streaming`, host mode, discoverability, payment methods). |
| 30312 | Presence | Viewer heartbeat and participation estimates. |
| 30313 | Moderation / roles | Relay-scoped mute/block + moderator/subscriber role updates. |
| 30321 | Discovery moderation | Operator hide/restore actions for official app discovery surfaces only. |
| 10030 | Custom Emotes | Visual emote mapping packs per broadcaster via emoji-picker-react integration. |
| 1 | Public chat | Stream-associated public text events. |
| 4 / 20004 | DM / whisper | Private encrypted channels for broadcaster/viewer coordination. |
| Route | Role | Auth / Guard |
|---|---|---|
| /api/whip/:originStreamId/whip | WHIP ingest proxy | Signed publisher path expected upstream. |
| /api/whep/:originStreamId/whep | WHEP playback proxy | Public read; guarded by origin policy. |
| /api/hls/:originStreamId/* | HLS passthrough | Public read with edge cache compatibility. |
| /api/xmr/tip/session(/:token) | Verified tip lifecycle | Signed control requests. |
| /api/xmr/stake/session(/:token) | Stake gate + refund lifecycle | Signed control requests. |
| /api/xmr/escrow/session/* | Escrow-v3 multisig orchestration | Coordinator/participant scoped actions. |
| /api/payments/catalog | Asset + wallet integration metadata | Public read. |
| /api/payments/intents(/:intentId) | Bound payment intent lifecycle | Signed buyer proof + one-time intent secret. |
| /api/payments/intents/:intentId/verify | Rail receipt or transaction verification | Intent secret; provider configuration stays server-only. |
| /api/payments/validate | Server-side payment method validator | Schema guard only. |
| /api/moderation/reports | Abuse report intake + operator queue actions | Signed report/operator proof scopes. |
/terms, /privacy, /community-guidelines.