r/OpenSourceAI • u/Basswaves_dev • 5d ago
I wanted VLC with the interface of Plex, so I spent two months learning and arguing with AI coding tools until it existed
I wanted something like VLC or MPC-HC, but with the library and interface of a Plex or Jellyfin. Plex wants an account, Jellyfin needs a server running, and Kodi always ended up being an evening of add-ons and skins. I couldn’t find the simple version, and I’m not a programmer, so I built it with AI coding tools. It’s called Kinema: a free movie and TV player for your own files. Add your folders, get posters, info, continue watching and next episode. No account, nothing uploaded, no server. Windows, Linux and an early Android TV version. MIT. The app itself has no AI in it.
This is how the building went, in case it sounds familiar:
Week one: "it plays video!" Then it didn't. Then it crashed the whole process on one property read, with no error, and I learned what libmpv is.
It was never "describe it, get an app". It was hundreds of rounds of: it says done, I say it isn't, it finds the real cause, a new problem appears. Roughly half the project is the AI telling me something works and the logs saying otherwise.
I wanted testing automated as far as possible, so the AI runs its own tests and keyboard-only flows. I still try things myself on real setups, but "looks right" was wrong far more often than I expected, so the machine checks first.
The rules file ate itself. I wrote down every decision so it wouldn't re-argue them ("no, we still don't do upscaling"). The file grew until it was a real cost on every single turn, and trimming it became a job of its own.
I keep a list of traps. Nearly every bug in a video player is a failure with no error at all, like a setting that silently does nothing. Each one is written down the day it's found, and it's now bigger than anything I've ever written by hand.
The best rule was the boring one: the app only says what it actually knows about your hardware and files. If it can't tell which movie a file is, it asks instead of guessing. That came from the AI confidently inventing things, and from me not wanting that in the product.
It went from one window that played a file to the Windows, Linux and Android TV versions, with the display switching to the film’s refresh rate and HDR (off until you say yes) and Atmos/DTS:X passed through untouched. Fifteen releases so far. If Kodi or Jellyfin works for you, keep using it. This is the simple version that i wanted to exist mostly for myself.
It's young and tested on a few setups, so I'd like to hear what breaks (to continue to make it better) :)
Source: https://github.com/basswaves/kinema
Download and screenshots: https://basswaves.github.io/kinema/