Commit Graph
100 Commits
Author SHA1 Message Date
kuekhaoyang 15f6e434c8 fix(player): guard cast SDK in Android WebView
Fixes #147
2026-04-09 22:41:15 +08:00
kuekhaoyang fb4f50ee7f Hide fullscreen clock with player controls
Fixes #141
2026-04-08 14:05:53 +08:00
kuekhaoyang 372e60c4e5 fix: restore Android PiP/fullscreen and remove stale media caching
Fixes #142
2026-04-08 13:49:24 +08:00
kuekhaoyang 4db08dbf72 fix: sync runtime config into settings 2026-04-08 13:36:09 +08:00
kuekhaoyang e93c259e4a fix: make Android TV setup usable on Android 9
Fixes #144
2026-04-07 22:23:15 +08:00
kuekhaoyang f4f5597a80 fix: polish favorites page implementation 2026-04-07 22:05:39 +08:00
kuekhaoyang 38fe8e00fb fix cloudflare pages direct upload build 2026-04-02 22:41:49 +08:00
kuekhaoyang e73416d76b gate VideoTogether behind settings 2026-04-02 22:29:27 +08:00
kuekhaoyang 37b6e160d7 fix remaining issue 72 ui and iptv regressions 2026-04-02 22:14:46 +08:00
kuekhaoyang 5829a79ee3 fix: enforce compliance mode for managed deployments 2026-04-02 21:42:00 +08:00
kuekhaoyang 9762e0a6b5 Make Android TV APK build manual only 2026-04-02 21:19:19 +08:00
kuekhaoyang f66ca2fd3e Reduce redundant workflow runs 2026-04-02 21:17:00 +08:00
kuekhaoyang c8b7544f36 fix: stabilize iOS web fullscreen across auto-next 2026-04-02 20:35:27 +08:00
kuekhaoyang 773f0f3dc8 Merge VideoTogether website integration
Closes #132
2026-04-02 20:25:47 +08:00
kuekhaoyang 9c3a984984 add VideoTogether website integration 2026-04-02 20:22:53 +08:00
kuekhaoyang 48ad9bc252 fix: restore HLS ad filtering
Closes #133

Closes #134
2026-04-02 20:12:59 +08:00
kuekhaoyang a6bfcf4b36 feat: add configurable seek step setting 2026-04-02 19:57:08 +08:00
kuekhaoyang 37d2c4abd9 Respect persisted danmaku API setting 2026-04-02 19:36:20 +08:00
kuekhaoyang 91a89e8bf2 Fix issue #72 follow-ups and IPTV source handling 2026-03-26 14:16:58 +08:00
kuekhaoyang 35f7f4d83a feat: upgrade player fullscreen buffering and panel controls 2026-03-26 13:51:45 +08:00
kuekhaoyang 286d72341e fix: update video resolution badge visibility logic in DesktopVideoPlayer 2026-03-18 13:26:47 +08:00
kuekhaoyang 5d8c3daba0 feat: add full source resolution probing and display in player UI 2026-03-18 13:06:58 +08:00
kuekhaoyang 064a27c8b6 feat: implement Upstash Redis for user config sync, replacing file-based persistence 2026-03-18 12:52:24 +08:00
kuekhaoyang 3564ce1ede chore: update package versions and add user config sync API
- Bump version to 4.8.0 and update dependencies in package.json
- Implement user config sync API for cross-device settings persistence
- Add resolution badge auto-hide hook for improved user experience
- Create useConfigSync hook to manage user settings synchronization with the server
2026-03-18 12:44:05 +08:00
kuekhaoyang 1439a15d22 feat: Enhance PlayerSettings with Danmaku options and improve UI components
- Added Danmaku settings including API URL, opacity, font size, and display area to PlayerSettings.
- Improved button styles and transitions across various UI components for better user experience.
- Updated BackToTop, Badge, Button, Card, ConfirmDialog, Input, ModalBackdrop, ModalHeader, SegmentedControl, and Switch components for consistency with Liquid Glass design.
- Adjusted package versions in package.json and package-lock.json to reflect version 4.5.0.
2026-03-15 17:01:51 +08:00
kuekhaoyangandClaude Opus 4.6 5782da19c6 feat: refine UI design system with polished colors, animations, and components (v4.7.0)
Comprehensive UI overhaul across the Liquid Glass design system:
- Refined color palette with deeper dark mode tones and better contrast
- Updated glass morphism effects with improved blur and saturation values
- Polished Button, Card, Badge, Input, Switch, SegmentedControl components
- Improved VideoCard with poster zoom effect, gradient overlay, and better badge layout
- Refined Navbar with tighter spacing and better icon button hover states
- Enhanced sidebar toggle buttons (rounded-full, better sizing)
- Split PlayerSettings into PlayerSettings + DanmakuSettings (150-line limit)
- Fixed broken rgba(var(--accent-color-rgb)) references with color-mix()
- Added new CSS variables: --radius-xs/sm/md/lg, --shadow-lg, --transition-spring/snappy
- Added staggered children animation and sidebar enter keyframes
- Better scrollbar styling and focus states

Co-Authored-By: Claude Opus 4.6 <[email protected]>
2026-03-15 16:58:03 +08:00
kuekhaoyangandClaude Opus 4.6 df137c97f3 feat: upgrade Liquid Glass design system to full spec (v4.6.0)
- Upgrade CSS variables with proper glass transparency, fixed gradient
  backgrounds, cubic-bezier(0.2, 0.8, 0.2, 1) fluid transitions, and
  enhanced shadow/border values matching the Liquid Glass touchstone
- Add full backdrop-filter: blur(25px) saturate(180%) to glass-card,
  glass-input, glass-popover, and glass-backdrop CSS classes
- Add lensing inner-glow hover effects and toast-in animation
- Update all UI components (Button, Card, Input, Badge, Switch,
  SegmentedControl, ConfirmDialog, ModalBackdrop, ModalHeader,
  BackToTop, Navbar) for strict Liquid Glass compliance
- Enforce rounded-2xl / rounded-full consistency across all components
- Bump version to 4.6.0, update @vercel/analytics to ^2.0.1

Co-Authored-By: Claude Opus 4.6 <[email protected]>
2026-03-15 15:47:16 +08:00
kuekhaoyang b424047c5b feat: add resolution probing support to VideoCard, VideoGrid, and VideoGroupCard components 2026-03-12 23:36:30 +08:00
kuekhaoyang b41ead2564 feat: import useResolutionProbe hook for video resolution probing in VideoGrid component 2026-03-12 23:36:23 +08:00
kuekhaoyang f7a166ea19 feat: implement Probe Resolution API and add useResolutionProbe hook for video resolution detection 2026-03-12 23:34:00 +08:00
kuekhaoyang a567f62e19 feat: update quality patterns to include HDR and remove redundant HD entry 2026-03-12 23:23:04 +08:00
kuekhaoyang b5a8a7f6c6 feat: enhance HLS player to prefer H.264 for compatibility with HEVC levels and update VideoGroupCard to include premium parameter in URL 2026-03-12 23:20:29 +08:00
kuekhaoyang 49fd5b70f4 feat: add video resolution detection and expose callback in player components 2026-03-12 23:12:55 +08:00
kuekhaoyang 0e87c94a64 feat: 修复超长 URL (414) 问题,添加分辨率检测,修复高级模式 bug,提升兼容性
- 将 groupedSources 存储在 sessionStorage 中而非 URL 参数里,以防止因 URL 过长导致的 CDN 414 错误 (#112)
- 自动将旧版 groupedSources URL 迁移至短 gs 键
- 从视频元素中检测并显示实际视频分辨率(例如 1920x1080),不再依赖来源提供的标签
- 修复 PlayerNavbar 设置链接在高级模式下总是跳转到 /settings 而非 /premium/settings 的问题 (#106)
- 修复 WatchHistorySidebar 未向 HistoryList 传递 isPremium,导致历史记录项 URL 丢失 premium=1 参数的问题 (#106)
- 为 HLS 播放添加多级浏览器回退机制 (HLS.js → 原生 → 代理 → 错误并提供浏览器建议) (#104)
- 在 IPTV 播放器中添加 HEVC/H.265 级别过滤,防止 CCTV 等频道出现仅有音频播放的问题 (#81)
- 更新依赖并升级版本至 4.5.0
2026-03-12 22:58:30 +08:00
kuekhaoyang dd760153e3 Update 2026-03-05 16:20:48 +08:00
kuekhaoyang 1e14948225 feat: implement locale switching between Simplified and Traditional Chinese with opencc-js 2026-03-01 13:22:06 +08:00
kuekhaoyang c95d7d5d95 feat: add premium password protection and enhance search functionality
- Implemented a separate password for premium content access via `PREMIUM_PASSWORD` environment variable.
- Added a `PremiumPasswordGate` component to manage access to premium content.
- Enhanced search functionality to support Traditional Chinese to Simplified Chinese conversion for broader search compatibility.
- Introduced automatic video quality labels in search results for better user experience.
- Added support for IPTV sources configuration through environment variables.
- Enabled merging of sources in search results based on environment variable settings.
- Updated volume control logic to handle mute state more effectively in video playback.
- Improved README documentation to reflect new features and configurations.
2026-03-01 12:06:53 +08:00
kuekhaoyang 29b649b731 feat: Enhance IPTV stream proxy with robust M3U8 detection and add Cloudflare Pages configuration, alongside minor UI layout adjustments. 2026-02-20 17:52:41 +08:00
kuekhaoyang 98599bb972 feat: implement multi-level IPTV sidebar with source and group expansion, multi-route collapse, and optimized search performance. 2026-02-20 11:41:53 +08:00
kuekhaoyang d92fc9d986 fix: Improve UI responsiveness by adding flex-wrap to various components and update package version. 2026-02-19 22:11:26 +08:00
kuekhaoyang d59b5af38c refactor: improve UI responsiveness in settings components and refactor scrollbar hiding class. 2026-02-19 21:57:22 +08:00
kuekhaoyang 82993e368b feat: Improve UI responsiveness for player controls, settings, and import tabs, and update lucide-react to 0.575.0. 2026-02-19 21:11:19 +08:00
kuekhaoyang 4f91549ca9 feat: Update IPTV API routes to use Edge runtime. 2026-02-19 14:31:59 +08:00
kuekhaoyang c0fcfcc4ac feat: implement IPTV channel search debouncing and pagination, add video source auto-fallback, and improve type normalization. 2026-02-19 14:27:17 +08:00
kuekhaoyang 9ea9f85507 feat: Implement user-defined video sources and danmaku API management with new settings pages and a dedicated store. 2026-02-19 11:56:14 +08:00
kuekhaoyang e1ea1a0d9a feat: Implement IPTV access control, enhance IPTV player with keyboard shortcuts, auto-refresh source latencies, normalize video type names, and persist source badge expansion state. 2026-02-18 11:53:42 +08:00
kuekhaoyang 54263f926b feat: Implement granular role-based access control, enhance IPTV stream proxy with header forwarding, and improve IPTV store with per-source channel caching. 2026-02-18 10:24:03 +08:00
kuekhaoyang aa8f8e9ff9 feat: enhance IPTV player with comprehensive controls, improved stream loading robustness, and UI refinements including volume, progress, and fullscreen. 2026-02-17 22:24:49 +08:00
kuekhaoyang 4256ef4179 feat: Add pagination to the IPTV channel grid and enable editing for IPTV sources. 2026-02-17 20:42:26 +08:00
kuekhaoyang 798fac455a feat: Implement background search for alternative video sources and enhance source switching capabilities. 2026-02-17 19:33:02 +08:00
kuekhaoyang 6a2e28c615 feat: Implement IPTV stream proxy to resolve CORS issues and refine desktop player menu positioning for fullscreen. 2026-02-17 17:57:56 +08:00
kuekhaoyang 5d139114b5 feat: Implement IPTV functionality with channel management and player, and add admin account configuration generation. 2026-02-17 16:37:53 +08:00
kuekhaoyang 91280f250f feat: Enhance spatial navigation for TV remotes by making more components focusable, improving input field handling, and refining video card image fallback UI. 2026-02-17 12:56:22 +08:00
kuekhaoyang acf8cff63a feat: Persist player volume and mute settings and integrate source selection directly into the episode list. 2026-02-17 12:42:41 +08:00
kuekhaoyang 2e7aebc513 feat: Implement query regeneration for personalized recommendations to fetch more content and refine tab pre-selection logic. 2026-02-17 12:12:21 +08:00
kuekhaoyang 338981dadb feat: Add initial support for Android TV and Apple TV platforms, introduce a dedicated premium mode settings store, and implement personalized video recommendations. 2026-02-17 12:00:07 +08:00
kuekhaoyang 0750ebc12b feat: Add comprehensive danmaku settings UI and store integration, and refactor danmaku props from player control components. 2026-02-17 10:38:23 +08:00
kuekhaoyang df37806de7 feat: Implement danmaku (bullet comments) functionality with API integration, settings, and player display. 2026-02-17 10:21:07 +08:00
kuekhaoyang b11463a347 refactor: Simplify cast availability logic to immediately show the cast button upon SDK load and update package version. 2026-02-17 09:29:28 +08:00
kuekhaoyang d1c601e362 chore: bump project version to 4.2.1 and update documentation and lock file. 2026-02-17 00:19:47 +08:00
kuekhaoyang 0753492dfd feat: Implement new authentication and account management system, refactoring password gates and settings components. 2026-02-17 00:09:56 +08:00
kuekhaoyang ba615e8965 feat: Introduce user-editable source ID field with automatic generation and editing state handling. 2026-02-16 23:35:44 +08:00
kuekhaoyang a9888353a3 feat: Implement mobile double-tap gestures for video player controls and apply CSS optimizations. 2026-02-16 23:27:45 +08:00
kuekhaoyang 98e314e31a feat: Implement settings password protection with a dedicated gate, management UI, and API integration. 2026-02-16 22:54:16 +08:00
kuekhaoyang a8c4586859 fix: Accumulate video counts per source across search result pages in search action. 2026-02-16 22:19:53 +08:00
kuekhaoyang e95fae4284 feat: Implement language filtering and display language information across video components. 2026-02-16 22:08:25 +08:00
kuekhaoyang c8402aedef feat: Implement HLS blob URL playback fallback for WebView-based browsers and increment package version. 2026-02-16 21:39:24 +08:00
kuekhaoyang bc25be5b05 feat: Implement parallel multi-page fetching from each search source and introduce client-side load more pagination for aggregated results. 2026-02-16 11:32:20 +08:00
kuekhaoyang d54039663a feat: Implement premium search history, add 'auto' fullscreen option, and update project version. 2026-02-16 11:10:09 +08:00
kuekhaoyang e04fe79355 feat: Introduce 'auto' fullscreen type with device-specific defaults, update player logic and settings, and add dedicated iOS fullscreen documentation. 2026-02-16 10:58:47 +08:00
kuekhaoyang bb7bc3e75f feat: Enhance M3U8 ad detection with proxy URL unwrapping and segment-level analysis, and implement proxy fallback for HLS playlist fetching. 2026-02-16 10:31:09 +08:00
kuekhaoyang 950b05f06e feat: Improve episode parsing in parsePlayUrl to handle missing names and provide default Chinese episode names. 2026-02-05 19:51:58 +08:00
kuekhaoyang 772e377b3d feat: Conditionally adjust speed menu and button dimensions for rotated display. 2026-02-04 20:18:02 +08:00
kuekhaoyang 30f54e5fa7 feat: Improve dropdown menu positioning and alignment for MoreMenu and SpeedMenu in rotated fullscreen landscape mode. 2026-02-04 20:10:53 +08:00
kuekhaoyang 5d13724af4 feat: Adjust menu positioning logic for rotated mode by modifying left, align, top, and bottom styles. 2026-02-04 19:42:31 +08:00
kuekhaoyang b12bdc06da feat: Implement smart positioning and dynamic opening for desktop menus, and refine overlay navigation button pointer event handling. 2026-02-04 19:27:29 +08:00
kuekhaoyang cfebce6f56 feat: Center desktop player menus in normal mode and adjust right controls z-index. 2026-02-04 18:57:12 +08:00
kuekhaoyang b608d1031c feat: Enhance desktop player menu positioning for rotated states and improve control button clickability. 2026-02-04 17:36:16 +08:00
kuekhaoyang a7020529df Refactor: improve dropdown menu positioning by calculating relative to container and adjust slider track hover area. 2026-02-04 17:22:35 +08:00
kuekhaoyang 787110bd40 . 2026-02-04 17:13:00 +08:00
kuekhaoyang 9e6275f68b feat: enhance video player progress bar touch interaction by adding native touch event handling and increasing touch target area. 2026-02-04 17:02:23 +08:00
kuekhaoyang 157ab4345f update 2026-02-04 16:51:11 +08:00
kuekhaoyang 22d6d4fee6 feat: Implement orientation-aware progress bar interaction for forced landscape mode on iOS and update player dependencies. 2026-02-04 16:47:34 +08:00
kuekhaoyang 56004edb29 feat: Implement PWA support and enhance desktop player menu positioning with dynamic space awareness. 2026-02-03 20:18:38 +08:00
kuekhaoyang a68be420af feat: Enhance web fullscreen experience on iOS by forcing windowed mode, handling orientation, and preventing native player takeover. 2026-02-03 20:08:47 +08:00
kuekhaoyang dcc897f139 feat: Enhance player page mobile experience with a new SegmentedControl component for tab-based content switching. 2026-01-25 16:01:28 +08:00
kuekhaoyang 30600e4d95 feat: Implement scroll position management with a new setting, add a back-to-top button, and extend search cache duration. 2026-01-25 15:42:21 +08:00
kuekhaoyang 7368582398 . 2026-01-25 15:02:46 +08:00
kuekhaoyang 198ca2ddd7 feat: Implement URL state persistence for search queries, source filters, and type filters, and update search form styling. 2026-01-25 14:55:38 +08:00
kuekhaoyang 2aa90a4d4f feat: implement proxy mode setting for video playback with retry, none, and always options 2026-01-25 14:40:38 +08:00
kuekhaoyang f4b16bac2d . 2026-01-25 11:55:19 +08:00
kuekhaoyang d6f3c4badb . 2026-01-25 11:45:43 +08:00
kuekhaoyang cd230a79d7 . 2026-01-25 11:45:03 +08:00
kuekhaoyang d412764384 feat: Add player settings page for default fullscreen mode selection and refine player fullscreen UI. 2026-01-25 11:18:26 +08:00
kuekhaoyang c9fde882c9 feat: Implement window fullscreen option for the player, enhance password gate protection logic, and add a settings icon. 2026-01-25 10:59:47 +08:00
kuekhaoyang c492dc310b feat: Implement password persistence using localStorage, controlled by the new PERSIST_PASSWORD environment variable. 2026-01-25 10:41:24 +08:00
kuekhaoyang 9b3766d1af feat: Enhance desktop player more menu with fullscreen responsiveness, auto-close on scroll, and updated styling. 2026-01-25 10:23:06 +08:00
kuekhaoyang 49c37b372f feat: Update Next.js to 16.1.4, bump project version to 4.0.0, refine DesktopMoreMenu UI, and remove AD_FILTER_GUIDE.md. 2026-01-21 19:13:21 +08:00
kuekhaoyang 24f870a40c feat: Integrate subscription synchronization and initialize new subscriptions with lastUpdated: 0. 2026-01-15 17:21:53 +08:00
kuekhaoyang 04aa734ff8 Update 2026-01-13 16:32:01 +08:00