Commit Graph

42 Commits

Author SHA1 Message Date
Nikita
78a4be3104 Remove commented-out code related to watch time tracking and authentication gating from $username.tsx for cleaner, more maintainable code. 2025-12-24 20:21:56 -08:00
Nikita
797311eeba Improve VideoPlayer event handling and streamline viewer count sync
- Add a `callReady` function to ensure `onReady` is called only once
- Attach `canplay` event listener for native HLS support to trigger `onReady`
- Call `onReady` immediately after manifest parsing for HLS streams
- Simplify `useStreamViewers` hook to skip viewer count sync for user "nikiv"
- Silently handle errors during viewer count synchronization to avoid unnecessary logs
2025-12-24 19:54:00 -08:00
Nikita
559d6dc635 Update pnpm lock with new dependencies and add flow test project with setup, dev, and test scripts 2025-12-24 19:52:54 -08:00
Nikita
9b535249bc Remove unused code related to the free preview countdown banner in StreamPage component 2025-12-24 19:38:34 -08:00
Nikita
e4a15b9c29 Add LiveNowSidebar component for live status notification and integrate it into relevant pages 2025-12-24 19:19:25 -08:00
Nikita
bc84274304 Update setup script to improve environment variable management and secrets handling. 2025-12-24 19:13:20 -08:00
Nikita
3141241626 Improve VideoPlayer to notify when ready and update StreamPage to handle player readiness and connection state 2025-12-24 19:06:58 -08:00
Nikita
0aa68c9ae8 Improve HLS playlist live check logic to correctly identify master playlists and live streams 2025-12-24 18:56:39 -08:00
Nikita
7e480305c4 Add API route to check HLS stream status and integrate server-side HLS validation in StreamPage component 2025-12-24 18:52:46 -08:00
Nikita
7c678b3110 Fix HLS live check to handle fetch errors and improve polling logic 2025-12-24 18:49:49 -08:00
Nikita
03362955f0 Implement free preview timer with localStorage persistence and UI indicator 2025-12-24 18:48:03 -08:00
Nikita
ba34ab4363 Add debug logs for stream status and HLS fetch process 2025-12-24 18:34:54 -08:00
Nikita
2d3d7e0185 Refactor stream status fetch to use local API proxy; add /api/stream-status route; update Stripe config references; modify checkout to use proPriceId; adjust fetch URLs in landing page. 2025-12-24 18:18:19 -08:00
Nikita
157f9a69d8 Add live stream status indicator to landing page and sidebar 2025-12-24 18:12:35 -08:00
Nikita
49c86a8034 Implement dashboard with user session, URL management, and access control 2025-12-24 18:08:54 -08:00
Nikita
dc3112bb3e Update auth page header and description for clarity and consistency 2025-12-24 17:55:42 -08:00
Nikita
fcc3d9eedf Update flow.toml to add environment management tasks and improve index.tsx by removing commented-out gallery code and adjusting hero section height 2025-12-24 17:36:17 -08:00
Nikita
f81affe448 Improve billing and access control by adding creator subscription check; update route components to enforce user authentication before viewing streams and replays. 2025-12-24 17:14:01 -08:00
Nikita
9d7ea0ada1 Update Stripe setup instructions and add new creator economy API routes
- Clarify instructions for creator-specific pricing and setup
- Remove outdated Stripe Price ID prompt from setup script
- Add API route definitions for `/api/creator/tiers`, `/api/creator/subscribe`, and `/api/creator/$username/access`
- Register new routes in route tree for API access
- Update documentation to reflect new endpoints and instructions
2025-12-24 16:58:43 -08:00
Nikita
f7009b161c Add Stripe setup and verification tasks to flow.toml; update database schema with creator economy tables for subscriptions, tiers, products, and payouts. 2025-12-24 16:55:11 -08:00
Nikita
cf4a43779e Implement setup task for worker admin environment and add new database schema and snapshot files 2025-12-24 16:31:01 -08:00
Nikita
26fa0b0ec9 Add URL management schema, route, and related updates for URLs feature 2025-12-24 15:10:38 -08:00
Nikita
7f6f7d2f37 Add stream_replays table, related schema, and API endpoints for managing stream replays 2025-12-23 23:20:22 -08:00
Nikita
1bb0450d02 Add links to social media and GitHub in LandingPage for better navigation 2025-12-23 18:17:28 -08:00
Nikita
9e62068359 Improve HLS live detection and state management in StreamPage component
- Add `hlsLive` state to track if HLS playlist is live
- Implement `isHlsPlaylistLive` function to determine playlist status
- Reset `hlsLive` before fetching new manifest
- Update fetch logic to set `hlsLive` based on playlist analysis
- Refine live status checks to consider HLS playlist state
- Adjust rendering conditions to use `isActuallyLive` for consistency
2025-12-23 14:41:42 -08:00
Nikita
9233104381 Implement soft fullscreen mode with timeout handling in VideoPlayer component; update fullscreen state management and styling accordingly. 2025-12-23 14:25:07 -08:00
Nikita
937f13581e Fix Spotify now playing text and link rendering in StreamPage component 2025-12-23 14:16:48 -08:00
Nikita
15b92cc16b Improve fullscreen support for CloudflareStreamPlayer and VideoPlayer components
- Add missing `webkitallowfullscreen` attribute in CloudflareStreamPlayer
- Enhance VideoPlayer to detect iOS devices and use `webkitEnterFullscreen` when available
- Adjust fullscreen state setting to account for WebKit-specific fullscreen elements
2025-12-23 14:07:53 -08:00
Nikita
4a6b510a5e Update production setup docs with new Spotify secret; enhance video components for fullscreen handling; add Spotify now-playing API module. 2025-12-23 13:54:34 -08:00
Nikita
244aa9324a Add cross-browser fullscreen handling and event listeners to VideoPlayer component 2025-12-23 12:31:55 -08:00
Nikita
93bd99f9ed Implement WebRTC URL resolution and update stream playback logic across components and API routes 2025-12-23 11:32:08 -08:00
Nikita
f45c28f941 fix: remove obsolete commit checkpoints file; update WebRTCPlayer for error handling; improve stream fallback logic in StreamPage 2025-12-22 11:47:17 -08:00
Nikita
2a98dd1d0b Update stream playback configuration to include WebRTC support and conditionally render WebRTC player in stream page. 2025-12-21 18:37:46 -08:00
Nikita
3d6709e5c5 Update commit checkpoints with new timestamp and session ID; modify stream placeholder to display "stream soon" and adjust link text based on username. 2025-12-21 18:36:03 -08:00
Nikita
01102c6817 Add WebRTC playback support: implement WebRTCPlayer component, update schema, database, playback types, and API endpoints to handle webrtc_url field and streaming logic 2025-12-21 18:34:06 -08:00
Nikita
b9927d9807 Update stream capture frame rate to 60 FPS and adjust encoding settings; increase audio bitrate to 256k for better quality. 2025-12-21 18:15:28 -08:00
Nikita
7d24993b08 Update commit checkpoints, add API route for stream viewers, and synchronize viewer count to database 2025-12-21 15:20:30 -08:00
Nikita
e37e89dc4d Update streaming placeholder to display a link for 'nikiv' and a message for others 2025-12-21 15:15:14 -08:00
Nikita
f188310411 Add real-time viewer count component and integrate it into stream page; update presence tracking logic with Jazz. 2025-12-21 15:12:32 -08:00
Nikita
c16440c876 Update route definitions to include archive routes and add new archive-related files 2025-12-21 15:04:40 -08:00
Nikita
103a4ba19c feat: Add Cloudflare StreamPlayer component and update schema with billing and access control
- Introduced `CloudflareStreamPlayer` React component for embedding streams
- Updated `package.json` with new dependencies: `@cloudflare/stream-react` and `stripe`
- Extended database schema with user tiers, Stripe billing, storage, and archive management
- Added access control logic in `access.ts` for user tiers and feature permissions
- Enhanced billing logic with archive storage limits and subscription checks
2025-12-21 14:56:30 -08:00
Nikita
8cd4b943a5 . 2025-12-21 13:37:19 -08:00