Cinehome
A self-hosted app for movies and TV. I use it regularly.

Cinehome brings browsing, my local library, and playback into one place. It runs on my own setup.
Most of the work is in the small things you notice when they go wrong: an episode that won’t start, a confusing loading message, or playback that loses your place. I’ve been working on making those transitions more reliable and easier to understand.
It’s built with TypeScript and Go, with a separate service handling the video stream.
Making playback feel simple.
Pressing play should be the easy part. Behind it, several services need to agree on what’s ready, what’s loading, and where you left off.
- Work that can pick up again
- Requests are saved before processing, so interrupted work can be retried.
- A clear playback status
- The interface keeps track of buffering and progress, even while other work continues in the background.
I use Cinehome regularly and keep working on playback reliability.
All work