What is OfflineTube?
OfflineTube bridges the gap between online video content and offline viewing. It combines the familiar YouTube browsing experience with powerful download capabilities and local playback features. Whether you want to save videos for offline viewing, create a local video library, or have reliable access to content without internet connectivity, OfflineTube provides the tools you need.Architecture
OfflineTube is built with a modern architecture that separates the frontend and backend concerns:Frontend
The frontend is built with Next.js 16 using the App Router architecture. It provides:- Modern React-based user interface
- Responsive design with dark/light mode support
- Real-time download progress tracking
- Local video player with streaming support
- Search and discovery features
Backend
The backend is powered by FastAPI and yt-dlp, running on port 8001. It handles:- Video information extraction and metadata
- Download orchestration with quality selection
- Local file storage and management
- HTTP range request streaming for smooth playback
- Thumbnail caching and optimization
Key features
OfflineTube offers a comprehensive set of features for managing your offline video experience:Content exploration
Browse YouTube content through search and trending sections directly from the app
Flexible downloads
Download videos or audio-only with quality and format selection options
Offline library
Manage your downloaded content with a local library and built-in media player
Smooth streaming
Stream local files with HTTP range requests for seamless playback and seeking
Download management
Track, cancel, delete, and retry download tasks with real-time progress updates
Optimized thumbnails
Automatic thumbnail caching with fallback support for reliable preview images
Responsive design
Modern interface that works across devices with adaptive layouts
Theme support
Switch between light and dark modes for comfortable viewing in any environment
Technology stack
- Frontend: Next.js 16, React 19, TypeScript, Tailwind CSS, shadcn/ui
- Backend: FastAPI, Python 3.10+, yt-dlp, uvicorn
- Media Processing: ffmpeg, ffprobe
- Storage: Local file system for downloads and thumbnails
Get started
Ready to set up OfflineTube? Check out the quickstart guide for a streamlined setup process, or dive into the detailed installation instructions for more control over your configuration.Quickstart
Get OfflineTube running in minutes with our step-by-step quickstart guide