Changelog
Track the latest updates, features, and improvements to Frontro. We're committed to transparency and keeping you informed about all changes to our platform.
Recent Updates
March 25, 2026
๐ New Features
- 3D Interactive Globe: Added a 3D interactive globe to the Active Users analytics page for visualizing active user locations in real-time.
- Unified Content Gating: Unified content gating for all content types using the RNUpsell modal, providing a consistent content access flow.
๐ง Improvements
- Mobile Course View: Updated mobile course view with video player improvements, sessions drawer overhaul, and full-page scroll capability.
- Chat UI in RN Community: Enhanced chat UI with text size bumps, spacing adjustments, and restyled action bars and reaction badges.
๐ Bug Fixes
- Fixed an issue where login errors masked successful authentications in the Android creator app, ensuring accurate feedback post-login.
๐๏ธ Internal
- Implemented GPU-accelerated VOD transcoder in the backend, phases 1 and 2.
- Added channel search public REST endpoint for creator site login page.
- Updated FrontroLive with WebRTC SFU viewer support and dynamic RTP slot reassignment.
- Internal Swagger documentation updates for API changes.
- Fixed DB connection pool configurations to reduce connection count.
- Performed test coverage enhancements for various features including memberships, AI tasks, and settings navigation.
March 23, 2026
๐๏ธ Internal
- Fix use of valid Prometheus template function to address invalid rule validation.
- Scale analytic-message-consumer and cdnlogprocessor maxReplicas to avoid excessive connections.
- Optimize Temporal workflow to improve time efficiency.
- Add stage backgrounds and chatTopicId capabilities to frontro live.
- Implement timeout protection for RTMP handleWaitingPool.
- Filter owncast-api pods in k8s_pod_manager for scaling.
- Implement WebRTC subscriber track delivery in turn port expansion.
- Upgrade dependencies to address security vulnerabilities.
- Harden ListAudienceIDs error test in goroutine timing.
- Remove and revert Video & Playback REST API for unauthorized access.
- Set default participant audio/video to false on Frontro Live.
- Adjust handling of streamId for SFU signaling WebRTC matching.
- Expand end-to-end Frontro Live test suite.
- Add Memberships & Payments Grafana Dashboard.
- Add coverage for auth update me handler.
- Make frontrolive consumer init non-fatal to unblock API deploy.
- Deactivate stale Stripe prices during membership sync.
- Implement FFmpeg SIGKILL and diagnostic logging for compositor.
- Allow creator preview of livestream before live deployment.
- Debug UDP socket state for FFmpeg bind conflict.
- Fix livestream REST API to display correct like count.
- Kill stale ffmpeg before compositor to prevent port conflict.
- Fix user update in REST API.
- Add subscriptionId and otpIds to canvas content items.
- Fix poll content access in course lessons.
- Add setAdAudienceIds for ad audience replacement.
- Delete participant record on removal for re-invitation.
- Serve HLS from pod to fix manifest proxy 500 error.
- Set ad audience nil fallback to channel defaults.
- Include all FrontroLive layout types, aligning with frontend.
- Support VideoAd update and trailer scheduling in scheduled-changes.
- Ensure compositor routing to pod-specific Temporal queue.
- Improve chat reactions and flag events routing through NATS/SSE.
- Mark orphaned scheduled change errors as unrecoverable.
- Adjust FFmpeg VP8 placeholder in e2e tester.
- Fix pion peer publisher classification and FFmpeg filter.
- Pin database sessions for advisory lock in migrations.
- Add channel role audiences for admin and moderator roles.
- Remove Ably service integration in favor of SSE.
- Verify email greeting with proper spacing.
- Use background context for go-live activity.
- Fix livestream HLS variant manifest filename.
- Correct GLOBAL_LIVESTREAM event stream topic for JetStream.
- Accept numeric Owncast segment filenames in CDN log processor.
- Route livestream URLs for GraphQL through V2 manifest endpoint.
- Use stream.m3u8 for live variant manifest access.
- Emit global SSE event on livestream state changes.
- Increase scaling for realtime-event-delivery during events.
- Generate STREAM_STARTED activity on livestream go-live.
- Auto-generate livestream title if left blank.
- Improve active viewer count consistency.
- Allow unlisted livestream access via direct links.
- Align RDS alarm thresholds and reduce pgxpool MinConns.
- Implement Pages & Content Discovery REST API migration.
- Replace Uptime Kuma monitoring with Checkly.
March 22, 2026
๐๏ธ Internal
- Added optional
stage_backgroundfield to the FrontroLive entity and updated REST API to handle this field. - Fixed RTMP
handleWaitingPooldeadlock by adding timeout protection. - Filtered k8s pod manager to only count owncast-api pods for scaling.
- Updated WebRTC signaling to support
RefreshViewerSubscriptionsand newget_tracksmessage type. - Upgraded dependencies to address security vulnerabilities.
- Enhanced
ListAudienceIDserror handling in tests. - Included anonymous audience support in Public GET endpoints for FrontroLive.
- Initiated activity center and SSE updates on FrontRow Live start.
- Reverted Video & Playback REST API endpoints due to authentication issues.
- Defaulted participant audio/video to false and adjusted Frontro Live signaling.
- Improved FrontroLive
streamIdpropagation for WebRTC track mapping. - Expanded Frontro Live E2E test suite.
- Added Grafana dashboard for Memberships & Payments.
- Increased test coverage for auth update me handler.
- Handled frontrolive consumer init errors to prevent deploy failures.
- Deactivated stale Stripe prices during membership sync.
- Enhanced FFmpeg handling in compositor with SIGKILL for stale processes and added diagnostic logging.
- Enabled preview mode for creators in livestream before going live for viewers.
- Logged UDP socket state to diagnose FFmpeg binding conflicts.
- Added
likeCountto REST API livestream response. - Killed stale FFmpeg before starting compositor to prevent UDP port conflicts.
- Emitted
track_addedmessages to assist WebRTC subscribers in mapping tracks to users. - Implemented comprehensive Grafana dashboard for livestream health monitoring.
- Ensured accurate audience tracking with improvements to FrontroLive audience members APIs.
- Improved activity center events for FrontRow Live participant invitations.
- Made changes to FFmpeg analyze duration for stream dimension capturing.
- Corrected SDP IP mismatches in compositor and improved RTP handling.
March 19, 2026
๐ New Features
- Online/Offline Indicators: Added online/offline status indicators and 'Last Active' column to the creator app's user management.
๐ง Improvements
- Notifications: Use push payload image as the notification icon if provided; fallback to favicon for notification badge.
๐๏ธ Internal
- Route compositor to pod-specific Temporal queue to ensure execution on the same pod as the SFU.
- Route chat reactions and flag/unflag events through NATS/SSE.
- Mark orphaned scheduled change errors as unrecoverable to prevent infinite retries.
- Replace invalid VP8 placeholder with valid libvpx keyframe in e2e tester.
- Pion peer publisher classification fix and FFmpeg single-participant filter update.
- Use pinned connection for advisory lock in RunMigration.
- Channel role audiences (Channel Admins + Channel Mods) feature added.
- Remove Ably service entirely in favor of SSE.
- Use
/livestream/mobile/{id}deep link for go-live streams. - Route global livestream SSE event through pub/sub for SSE delivery.
- Use SDP file for FFmpeg RTP input for codec detection.
- Fix space in verify email greeting between Frontro and username.
- Use background context in go-live activity goroutine.
- Use correct manifest filename based on livestream state.
- Fix stream topic in global livestream state event.
- Accept Owncast numeric segment filenames in CDN log processor.
- Route GraphQL livestream URL through V2 manifest endpoint with viewer JWT.
- Use stream.m3u8 for live variant manifests.
- Emit global SSE event on livestream state change.
- Pre-scale for MORR Off-Road Games 2026 livestream.
- Create STREAM_STARTED activity center event on go-live.
- Auto-generate livestream title when left blank.
- Improve active viewer count consistency and add regression tests.
- Allow unlisted livestreams to be accessed via direct link.
- Fix RDS alarm thresholds and reduce pgxpool MinConns.
- Pages & Content Discovery REST API endpoints (step 3.3).
- Remove Uptime Kuma infrastructure; transition to Checkly.
- Channel & config REST API endpoints for mobile app migration (step 3.2).
- Fix warm-pool stuck state and IP detection.
- Distributed Redis throttle for refreshUserActiveStatus.
- Harden Google subscription sync and RTDN auth.
- Guarantee correct products in subscription_update_confirm flow.
- Add hasChatAccess to livestream REST API response.
- Add Checkly monitoring-as-code with CI deployment.
- Support multiple active livestreams.
- Fix warm-pool pod STAGE and cleanup failed pods.
- Enable Frontro Live signaling + TURN on channel-api.
- Update E2E tests for TURN in WebRTC.
- Create STREAM_STARTED activity when livestream goes live.
- Reduce DB connection pool sizes for dev/test environments.
- Add Auth & Identity REST endpoints (step 3.1).
- Add ConnMaxIdleTime to sql.DB pools to handle idle connections.
- Expose subscriptionId and otpIds on lesson content response.
- Tune channel-api HPA for faster scale-down.
- Reduce Lambda DB connection pool to prevent RDS exhaustion.
- Cascade course-level access restrictions to lessons.
- Increase warm pool min to 3 pods, add retry to E2E Start.
- Correct Go version in frontrolive e2e CI workflow.
- Fix E2E test suite with pod and API changes.
- Limit concurrent DB operations in viewer count watcher.
- Combine SFU + compositor into single warm-pool pod.
- Auto-populate SMS provisioning from channel Stripe data.
- Switch API to location DB for city-level geo resolution.
- Add rollId filter to GET /v1/video-rolls.
- Add country centroid fallback for globe active user dots.
- Use credentials login for chat load test.
- Wire unregistered user collect routes into API server.
- Add memberships functional coverage for REST flows.
- Grant READONLY_CREATOR access to PUSH_NOTIFICATION view.
- Bulk create and delete endpoints for video rolls.
- Video rolls request DTOs, channelId fix, and cleanup.
- Add playback progress enrichment for series items.
- Handle non-JSON 500 responses in E2E startSession SFU detection.
- Video rolls camelCase DTOs, computed fields, and package rename.
- Remove invalid ::NUMBER cast in PUSH_NOTIFICATION SQL view.
- E2E test uses patched media pipeline logic.
- Media pipeline E2E shifted to dev infrastructure.
- Video Rolls REST API with local-video-rolls endpoints.
- Add notification_type to FCM/APNs payloads.
- Cover community chat topic access controls in tests.
- Centered trickplay preview on smaller screens.
- Web push notification implementation updated with deeplink and analytics event support.
- Fixed viewer count formatting to use K/M abbreviations instead of comma-separator numbers.
- Removed Ably SDK in favor of SSE for realtime transport in Android app.
March 16, 2026
๐๏ธ Internal
- Add comments to resolve security scan false positives in various backend files.
- Change OneDrive API for consumer downloads.
- Upgrade Go from 1.25.8 to 1.26.1 in backend workflows.
- Implement Frontro Live E2E test suite and GitHub Actions workflow.
- Adjust livestream viewer count update interval.
- Ensure public visibility and audience filtering in search results.
- Accept pre-authenticated download URL for OneDrive uploads.
- Extend audience system for unregistered users.
- Include gap tests for compositor warm pool and components.
- Upload series cover images to CDN bucket.
- Add functional tests for Frontro Live features.
- Conduct extended SMS functional tests.
- Upload show cover images to CDN bucket, revise S3 keys.
- Enhance web push notification delivery and tracking.
- Implement various API endpoints and features for Frontro Live.
- Link SMS subscribers to users with PII scrubbing and syncing.
- Add rate limiting for analytics registration resolution.
- Rename UnregisteredUserCleanupActivity method.
- Add various livestream REST endpoints.
- Include dev ad break override in VMAP testing.
- Adopt standard upload type prefixes for cover image S3 keys.
- Introduce Show entity with additional support features.
- Suppress Slack alerts for specific webhook errors.
- Fix manifest flow and segment retention issues.
- Remove weekly dependency update workflow.
- Address Stripe integration nuances in subscription entitlement.
- Maintain sorted order of membership tiers in responses.
- Switch livestream viewer count method to SSE connection stats.
- Add computed fields to livestream REST API.
- Enable direct file upload for show cover images.
- Auto-register Twilio webhooks during SMS provisioning.
- Track unregistered user sessions with new middleware.
- Add chat topics access control.
- Conduct SMS regression prevention and functional tests.
- Preface cover image URLs with CDN domain.
- Implement unregistered user system for marketing.
- Add Temporal workflows and NATS messaging for SMS processing.
- Adjust compositor deployment strategy.
- Extend web push requests with device metadata.
- Include server-side apply in IAM annotation processes.
- Introduce new OneDrive upload functionality in uppy-companion.
- Configure IAM role and service account trust policies.
- Optimize healthcheck strategy to prevent deployment issues.
- Provide new REST endpoints for SMS marketing.
- Transition livestream consumer hooks from GraphQL to REST.
- Implement trickplay thumbnail previews.
- Replace viewer count method and enhance REST API coverage in nugs.
- Remove Ably from web apps, switch to SSE.
- Implement chat and RN canvas features, resolve various issues in nugs.
- Support chat topic access on iOS and address deployment targets.
- Update MORR, Builder Bunker, and Android app versions.
March 13, 2026
๐ New Features
- Dropbox Integration: Introduced Dropbox as a new cloud drive source for video uploads.
- Typing Indicators: Added typing indicators for community chat to show who is typing.
- Improved AI Chat: Enhanced the AI chat experience with UI and interaction improvements.
๐ง Improvements
- Builder Dependencies: Removed playableId dependency in the builder, supporting native COURSE/LESSON types.
- Video Ad Audience Configuration: Implemented video default ad audience configuration available during creation based on channel settings.
- Field Name Consistency: Updated various builder component field names to ensure consistency between frontend and backend.
๐ Bug Fixes
- Resolved the issue of reaction counts doubling due to optimistic updates overlapping with real-time updates.
๐๏ธ Internal
- Fix handling of oversized request bodies by compressing screenshots.
- Refactor chat message system to prevent reaction double-counting.
- Refine native content type support in builder processes.
- Centralized version management in iOS project configuration.
v2.7.8 - March 2025
๐ New Features
- Activity Center: Central place for viewers to see push and chat notificationsโreactions, replies, mentions, and creator announcementsโwith per-type preferences
- Community Chat: Topic-based chat with categories, DMs, reactions, @mentions, and attachments; topics can be gated by subscription tier or one-time purchase
- In-App Messages: Creators can send targeted in-app messages (full- or half-screen) with triggers, audience targeting, and scheduling
- Shorts: Vertical short-form video with a dedicated feed, swipeable player, and mobile upload (e.g. 8s, 10MB, MP4) from the creator app
- Courses: Structured courses with sections and lessons, video and downloads, instructor profiles, and access via subscription or one-time purchase with progress tracking
- One-Time Purchases: Sell access to individual content (videos, courses) with cover image, trailer, and optional Apple/Android product IDs
- Devices / Active Sessions: Viewers can see where theyโre signed in and log out individual devices or all other sessions from account settings
๐ง Improvements
- Subscriptions: Clearer tier benefits and gating for content and chat; improved subscription management in the dashboard
- Ads: Per-video and per-channel ad controls; brand-safety and category-blocking options where supported
- Comments & Moderation: Comments on video, Shorts, livestreams, and course lessons with pin, hide, delete, and flag/report handling in Message Center
- Push Notifications: Create and schedule push campaigns with deep links or external URLs and audience targeting
- Analytics: Channel and content analytics with views, engagement, and subscription metrics; course completion and lesson-level insights
- Builder: Configure channel layout and content sections so creators can customize how their channel appears to viewers
- Audiences & Localization: Segment audiences and manage localization for global reach
๐ Bug Fixes
- Stability and performance improvements across content playback, chat, and notifications
- Fixes for subscription and one-time purchase access checks on gated content and chat topics
- Resolved issues with notification delivery and Activity Center badge counts
v2.7.7 - January 2025
๐ New Features
- Enhanced Developer Documentation: Complete overhaul of developer docs with new API reference sections
- In-App Messages: New messaging system for user engagement and notifications
- Improved Navigation: Split documentation into Docs and Developer sections for better organization
๐ง Improvements
- Dark Mode Enhancements: Improved dark mode support across all documentation pages
- Code Examples: Updated code block styling with better dark mode backgrounds
- Navigation UX: Added "Coming Soon" tooltips for upcoming features
๐ Bug Fixes
- Fixed navigation state persistence issues
- Resolved mobile navigation display problems
- Improved accessibility for screen readers
v2.7.6 - December 2024
๐ New Features
- API Rate Limiting: Implemented comprehensive rate limiting for all API endpoints
- Webhook Improvements: Enhanced webhook delivery reliability and retry mechanisms
- SDK Updates: Released updated SDKs with improved error handling
๐ง Improvements
- Performance: Optimized API response times by 30%
- Documentation: Added comprehensive API examples and tutorials
- Security: Enhanced authentication and authorization systems
๐ Bug Fixes
- Fixed webhook delivery failures in high-traffic scenarios
- Resolved SDK connection timeout issues
- Improved error messages for better debugging
v2.7.5 - November 2024
๐ New Features
- GraphQL API: Launched comprehensive GraphQL API for flexible data queries
- Real-time Notifications: Added WebSocket support for live updates
- Advanced Analytics: New analytics dashboard with detailed insights
๐ง Improvements
- API Documentation: Complete REST API documentation with interactive examples
- SDK Performance: 50% improvement in SDK initialization time
- Error Handling: More descriptive error messages and better debugging tools
๐ Bug Fixes
- Fixed authentication token refresh issues
- Resolved data synchronization problems
- Improved mobile SDK stability
Version History
2024 Releases
| Version | Date | Highlights |
|---|---|---|
| v2.7.8 | Mar 2025 | Activity Center, Community Chat, Shorts, Courses, OTP, In-App Messages |
| v2.7.7 | Jan 2025 | Developer docs overhaul, In-app messages |
| v2.7.6 | Dec 2024 | API rate limiting, Webhook improvements |
| v2.7.5 | Nov 2024 | GraphQL API, Real-time notifications |
| v2.7.4 | Oct 2024 | Performance optimizations |
| v2.7.3 | Sep 2024 | Security enhancements |
| v2.7.2 | Aug 2024 | Bug fixes and stability improvements |
| v2.7.1 | Jul 2024 | Initial public release |
Breaking Changes
v2.7.0 - July 2024
- API Versioning: All API endpoints now require version specification
- Authentication: Updated OAuth flow with improved security
- Webhooks: New webhook signature verification required
Deprecation Notices
Deprecated in v2.7.7
- Old webhook endpoints will be removed in v2.8.0
- Legacy authentication methods will be deprecated in v2.8.0
Deprecated in v2.7.6
- API v1 endpoints will be removed in v2.8.0
- Old SDK versions will no longer be supported
Stay Updated
- GitHub: Follow our GitHub repository for development updates
Support
Need help with a specific version or feature? Check out our support documentation or contact our team.
Last updated: March 2026