cmyflix
Lightweight Netflix-style media server written in C
194 stars 13 forks last commit first released AGPL-3.0
Slowing down
No commits since 18 Dec 2025. Check the issue tracker before you rely on it.
cmyflix is a lightweight, DIY Netflix-style media server implemented in C. It scans a filesystem for movies and TV shows, retrieves metadata, generates JSON databases and static HTML pages, and provides a simple web UI and HTML5 video playback suitable for low-resource devices and NAS setups.
Key Features
- Scans media directories and builds JSON databases describing movies and TV shows
- Generates static HTML pages from metadata for serving via any web server
- Uses TMDB metadata for titles, covers and descriptions (requires an API key)
- Supports HTML5-friendly video formats (mp4, mkv, ogv, webm) for direct playback
- Generates thumbnails and works with tools like ffmpeg and ImageMagick for media processing
- Minimal dependencies and a small C codebase optimized for low-power devices; buildable with make and installable via a prebuilt package
Use Cases
- Run a lightweight media catalogue and player on a Raspberry Pi or NAS to stream files to browsers on the local network
- Generate a static, browsable movie/TV library that can be served from any web server or static hosting on constrained hardware
- Maintain a simple media index for families or small teams without deploying a heavyweight media server solution
Limitations and Considerations
- Requires a TMDB API key for rich metadata; basic operation is limited without it
- No built-in transcoding; streaming is limited to formats supported by client HTML5 players
- Assumes a strict folder structure for TV shows and movies; organization mismatches may require manual fixes
cmyflix is suited for users who want a minimal, fast media catalog and playback frontend with low resource usage. It prioritizes simplicity and performance over advanced server features and heavy integrations.
Categories:
Tags:
Tech Stack:
Similar to cmyflix

Stash
Web app to organize and stream a private adult media library
Self-hosted web app for organizing, tagging, and streaming a private adult video and image library with metadata scraping, galleries, and markers.

Gaseous
Self-hosted game ROM library manager with in-browser emulation
Self-hosted ROM and game library manager that identifies titles from multiple sources, enriches metadata, and lets you play supported systems in the browser.
CouchTube
YouTube-based frontend that simulates a scheduled TV channel
CouchTube is a Go application that schedules and plays curated YouTube videos as TV-style channels using JSON playlists, with Docker and SQLite support.

Kodi
Open source home theater and media center software
Kodi is an open source media center for organizing and playing local and networked video, music, and photos with a TV-friendly interface and add-on ecosystem.


Lyrion Music Server
Music streaming server for Squeezebox and compatible players
Open-source music server that streams local libraries, internet radio, and streaming services to Squeezebox hardware and software players like Squeezelite.

MistServer
Open-source streaming media server for OTT, live and VOD.
MistServer is an open-source streaming media toolkit that supports HLS, DASH, RTMP, RTSP, SRT and WebRTC for low-latency live and VOD workflows.




