2 min read
DaisyTube

Features

  • YouTube Search — Search videos via the Innertube client with automatic deduplication
  • DASH Video Playback — Adaptive streaming via dash.js with full seeking support
  • Custom Video Controls — Play/pause, ±10s seek, volume slider, 8 playback speeds (0.25×–2×), Picture-in-Picture, fullscreen, with auto-hide
  • Media Session API — OS-level media controls from the system tray and lock screen
  • SponsorBlock — Privacy-preserving hash-prefix lookup; auto-skips sponsors, self-promo, intros, outros, and more with colored progress bar markers
  • Channel Subscriptions — Subscribe/unsubscribe with a reactive local database
  • Subscription Feed — Home page aggregates the latest videos from all subscribed channels, sorted by date, with persistent caching
  • Encrypted Local Database — RxDB with CryptoJS encryption on sensitive fields (channel IDs, names, thumbnails)
  • Cloud Sync — Appwrite-powered authentication with bidirectional subscription sync and avatar upload
  • Invidious Companion Sidecar — Bundled companion binary auto-launches on startup with health checking
  • Stream Proxy — Custom stream:// URI scheme in Rust for proxying video streams with full Range header support
  • Everforest Theme — A beautiful custom color scheme built on daisyUI
  • 3D Hover Effects — Video cards with CSS 3D transforms

Tech Stack

LayerTechnology
Desktop FrameworkTauri 2 (Rust)
FrontendReact 19 + TypeScript 5.8
Build ToolVite 7
RoutingReact Router 7
UIdaisyUI 5 + Tailwind CSS 4
Video Playerdash.js 5
YouTube APIyoutubei.js 17
Local DatabaseRxDB 17 + IndexedDB + CryptoJS
Cloud BackendAppwrite
Companion ServerDeno + Hono