StreamOS is a lightweight, self-hosted media streaming platform designed for personal use. It features a modern "Liquid Glass" UI, automated media indexing, thumbnail generation, and multi-profile content isolation with age-based filtering.
- Liquid Glass UI: A beautiful, responsive interface with Netflix-inspired aesthetics, glassmorphism, and smooth animations.
- Multi-Profile Support: Create separate profiles for family members, each with its own watch history and theme.
- Age-Based Filtering: Content is automatically categorized and filtered based on profile age categories (Kids, Teen, Adult).
- Automated Media Scanner: Automatically indexes your movies, TV shows, and anime. Supports NFO files and local posters/backdrops.
- TMDB Integration: Enriches your library with metadata (descriptions, cast, directors, trailers) and high-quality artwork from The Movie Database.
- Continue Watching: Resume your favorite content exactly where you left off.
- In-Browser Playback: Stream your media directly in any modern web browser.
- Thumbnail Generation: Automatically generates preview thumbnails and "scrub" previews for the video player.
- Python 3.10+
- Node.js 18+
- FFmpeg (required for thumbnail generation)
cd backend
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txtCreate a .env file in the backend directory (optional for TMDB):
TMDB_API_KEY=your_api_key_hereRun the server:
python -m uvicorn app.main:app --reloadcd streamos-ui
npm installConfigure your API URL in .env:
VITE_API_BASE=http://localhost:8000Run the development server:
npm run devbackend/: FastAPI server, SQLite database, and media scanner.streamos-ui/: Vue 3 + Vite frontend application.docs/: Detailed documentation, including the User Manual and Development Guide.media/: Default directory for your video files (organized by category).thumbnails/: Storage for generated thumbnails and metadata artwork.
- User Manual - How to use StreamOS.
- Development Guide - Architecture, API, and contribution guide.
- Media Organization Guide - How to name and structure your files.
This project is licensed under the MIT License - see the LICENSE file for details.