Apr 29, 2026v1.8.0
Guest Overhaul, UI Declutter, Chat Overlay & Reconnection
- featGuest backstage panel — see all participants with role badges, mic/camera status, and speaking indicators (no moderation controls)
- featGuest chat input — guests can now type messages in chat, shown with teal 'Guest' badge
- featGuest screen sharing — dedicated screen share toggle button in guest control bar
- featCopy room link button for guests in header bar
- featTopToolbar — GoLive, Layout, Text, Invite, Settings, End moved above the stage; bottom bar is now just media controls
- featTwitch-style chat overlay on canvas — last 4 messages with auto-fade, configurable position (4 corners)
- featText overlay timer — set duration in seconds, auto-hides when expired, shows countdown badge
- featNetwork quality indicator — signal strength icon (green/yellow/red) for host and guest
- fixCanvas now centered with max-width 1280px and 16:9 aspect ratio — no more blank space when streaming
- fixConnection timeouts — adaptive streaming, dynacast, custom reconnect policy (5 attempts, exponential backoff)
- fixConnectionMonitor shows attempt count, elapsed time, and refresh button after 5 failed attempts
- improvementControl bar decluttered — only essential media controls on mobile; everything else in TopToolbar
Apr 29, 2026v1.7.0
End Studio Dialog, Recording & Text Overlays
- featConfigurable end-studio dialog — checkboxes for stop streams, kick participants, with live platform warning
- featSession recording — Record button captures audio + video via LiveKit Egress to MP4 with elapsed timer
- featText overlays — add text to the stage with 6 positions, 3 font sizes, custom colors and backgrounds
- featStage background color — change the canvas background from a palette of dark-theme presets
- featOverlays and background sync to guests in real time via LiveKit data messages
- improvementEnd studio stops active streams and kicks participants conditionally based on host selection
- improvementRecord button shows pulsing red dot with MM:SS elapsed timer while recording
Apr 29, 2026v1.6.0
Layout Sync, Kick Notifications & YouTube Metadata
- featGuest layout sync — guests now see the same layout preset the host selects (Grid, Spotlight, Screen+Grid, etc.) via LiveKit data messages
- featKick notification — removed guests see a clear 'You were removed' screen with a 'Request to Rejoin' button
- featYouTube broadcast metadata — title, description, and thumbnail sent via YouTube Data API v3 when OAuth token is available
- featThumbnail URL field in Create Studio modal for YouTube broadcasts
- fixHost toast now says 'was removed' when kicking vs 'left the studio' when guest leaves voluntarily
- improvementGoLivePanel shows per-platform OAuth status — auto metadata vs manual YouTube Studio link
- improvementKicked guest rejoin flow re-enters device preview with same name and email
Apr 29, 2026v1.5.0
Chat Polish, Host Echo & Responsive UI
- featChat filter shows only connected platforms with real SVG logos and green ring indicator
- featHost-sent messages appear in chat window instantly with violet 'You' badge, broadcast to guests via SSE
- featYouTube backup ingest URL support — prevents 'duplicate ingestion' warnings on poor network
- featCollapsible chat panel on all screen sizes — floating badge with unread message count
- featBackup Server URL field in YouTube platform settings
- fixControl bar (GoLive, End) always visible — no longer hidden behind chat on small screens
- fixLayoutSelector hidden on mobile to free space for essential controls
- improvementGuest studio gets chat toggle, collapsible panel, and unread badge matching host experience
Apr 28, 2026v1.4.0
Audio Reliability & VU Meters
- featAudio level indicator (VU meter) — real-time mic level bars for host and guest, powered by Web Audio AnalyserNode
- featMic level preview on guest join screen — speak to verify your microphone before entering the studio
- featGuest device selector — guests can now pick camera, microphone, and speaker (previously host-only)
- fixPreview-to-room mic handoff — 600ms release guard prevents browser mic conflict when transitioning from device preview to LiveKit room
- fixLiveKit room now defers connect until preview tracks are fully released (connect={previewReleased})
- improvementAudio architecture matches StreamYard/Google Meet SFU model — RoomAudioRenderer creates hidden audio elements per remote participant
Apr 27, 2026v1.3.0
Broadcast Details, Custom RTMP & Stream Fixes
- featBroadcast description — set a description when creating a studio, sent to all streaming platforms
- featCustom RTMP destinations — stream to Facebook Live, LinkedIn, Restream, or any RTMP endpoint
- featCustom RTMP management in Settings with add/remove UI (max 10 per user)
- featCustom RTMP destinations shown in GoLive panel alongside platform checkboxes
- featGoLive panel shows broadcast title + description preview before going live
- fixGoLive panel was calling wrong API endpoints — fixed all URLs to use /stream-live
- fixStream stop now uses DELETE method (was incorrectly POST)
- improvementReal platform SVG logos throughout the entire app (YouTube, Twitch, Kick, TikTok)
- improvementDevice selector — pick camera, microphone, and speaker from the studio ControlBar
Apr 25, 2026v1.2.0
Platform Connector Upgrades & Chat Reply
- featSend messages to YouTube and Twitch live chat directly from the studio
- featChat input for hosts — type a message and it goes to all connected platforms
- featTwitch reply threading — replies show parent message context in the chat panel
- featYouTube Super Chats and Super Stickers displayed as donation events with amounts
- featTwitch Bits/Cheers displayed as donations, subs/resubs/gift subs as subscription events
- featTwitch raids shown with viewer count badge
- featTikTok gifts shown as donations with diamond-to-USD conversion
- featFollow events captured from Twitch, Kick, and TikTok
- featKick subscription and gifted sub events captured via Pusher
- improvementYouTube polling now uses dynamic interval from API response instead of fixed 20s
- improvementChat UI: color-coded event types — donations (yellow), subs (violet), follows (green), raids (blue)
- improvementTikTok like events shown as compact one-line display, join events filtered to reduce noise
- improvementAuthor badges parsed from all platforms (moderator, subscriber, VIP, owner)
Apr 24, 2026v1.1.0
Access Control & Guest Leads
- featAuto-admit mode — guests join instantly without host approval when enabled
- featManual approval mode — host reviews and admits each guest individually (default)
- featGuest email capture — optional email field on join form for lead collection, no account needed
- featGuest lead database — emails and names stored per room for marketing teams
- improvementAccess control toggle in studio creation modal with clear descriptions
Apr 24, 2026v1.0.0
Host Moderation & Edge Case Hardening
- featMute/unmute guest mic and camera — host can toggle any guest's audio or video
- featKick participant — remove a guest from the studio with one click
- featParticipant count shown in studio view
- featFeedback page — users can submit bug reports, feature requests, and general feedback
- fixDeny route now supports demo mode (LiveKit JWT auth)
- fixGuest leave now sends identity — participant leftAt properly recorded in DB
- fixPending names freed on admit/deny — guests can re-request with the same name
- fixAdmit errors now shown to host as toast notifications instead of silent failures
- fixGUEST_LEFT events clean stale participant IDs from on-screen list
- improvementBackstage panel shows empty state when no guests have joined
- improvementParticipantRow shows host badge, mic/cam/kick controls for guests
- improvementChangelog updated to cover all releases from v0.1.0 to v1.1.0
Apr 24, 2026v0.9.0
Feedback System
- featFeedback page at /feedback — submit bug reports, feature requests, or general feedback
- featFeedback stored in Redis with 90-day TTL (last 1000 entries)
- improvementFeedback links added to landing page nav, footer, and changelog
Apr 20, 2026v0.8.0
Audio Autoplay & DB Resilience
- fixBrowser audio autoplay — StartAudio button appears when browser blocks audio without user gesture
- fixNeon DB resilience — 3-layer retry with exponential backoff for free-tier connection drops
- improvementRedis caching (60s TTL) eliminates ~80% of DB reads across 15+ routes
- improvementCache invalidation on room status mutations for data freshness
Apr 19, 2026v0.7.0
Platform Connections & Streaming
- featPlatform connection management — connect YouTube, Twitch, Kick, TikTok stream keys
- featLive streaming to connected platforms from the studio
- improvementStudio UI improvements — refined controls and layout
- securityRate limiting on guest requests and API routes
Apr 19, 2026v0.6.0
Schema Migration & Sign-in Fix
- fixSchema enum migration — resolved Prisma enum conflicts on deploy
- fixAuto sign-in after OAuth — no more redirect loops
- fixNeon retry logic improved with pgbouncer params
- improvementRoom status UX — clearer lobby/live/ended states
Apr 18, 2026v0.5.0
Edge Case Hardening
- securitySession summary is now host-only — auth-gated
- fixTab reload no longer ends the studio session
- fixDuplicate join requests now deduplicated
- fixRoom full check at request time, not admit time
- fixDouble-end race condition resolved with idempotent guard
- fixSSE streams for ended rooms now return 404 immediately
- fixDemo route validates token expiry and room claim
- improvementGuest waiting state now times out after 3 minutes
- improvementHost redirected with error context when entering wrong/ended room
- improvementLiveKit disconnect overlay shown in studio
Apr 18, 2026v0.4.0
Layout Presets & Backstage
- feat5 layout presets: Grid, Spotlight, Screen+Grid, Screen Only, Single
- featBackstage mode — guests join off-canvas, host brings them on stage
- featParticipant strip with mic/cam indicators and Stage/Backstage buttons
- improvementLayoutSelector added to ControlBar (hidden on mobile)
Apr 18, 2026v0.3.0
Session Summary
- featPost-session summary page at /session-summary/[code]
- featStats: duration, participant count, peak participants, message count
- featPlatform activity bar chart (CSS only)
- featShare to X and LinkedIn with pre-filled text
- featCopy stats to clipboard
- featDB fallback when Redis TTL expires
Apr 17, 2026v0.2.0
Studio Redesign
- featFull dark theme redesign (#0d0d0d, #080808)
- featChat panel: platform left-border accents, hover timestamps, filter pills
- fixMic/cam/screen controls now work (ControlBar moved inside LiveKitRoom)
- fixGuest admission bug fixed — dual auth (session + LiveKit JWT)
- improvementSpeaking ring on video tiles (violet glow)
- improvementMobile chat toggle with slide-in panel
Apr 16, 2026v0.1.0
Initial Launch
- featGoogle OAuth sign-in
- featCreate studio rooms with LiveKit
- featGuest join flow with approval system
- featLive chat aggregation (YouTube, Twitch, Kick, TikTok)
- featSSE-based real-time events
- featUpstash Redis for event streaming