Apple TV app for safer YouTube browsing
Swift 50%
48%
TypeScript 2%

README.md

ChannelTube #

Project: Apple TV YouTube App

Building a personal, family-friendly tvOS app that lets people browse and watch videos from a whitelisted set of YouTube creators.

Architecture:

  • Backend: Node.js (TypeScript, hono ). Maintains a channel whitelist, stores it in database, and uses yt-dlp to resolve stream URLs on demand. Exposes a REST API.
  • tvOS App: Native Swift + SwiftUI + AVPlayerViewController. Browsing UI with LazyVGrid, streams resolved lazily at playback time via the backend.

Key decisions:

  • Native Swift chosen over React Native (better tvOS support, simpler architecture, stronger agentic code generation results)
  • Planning to build agentically
  • yt-dlp URLs resolved at play time (not cached) due to expiry

Notes:

  • Personal/family use only (yt-dlp ToS grey area, low practical risk)
  • yt-dlp can be slow on Pi; UI should handle loading state gracefully
  • Keep yt-dlp updated frequently