Digital signage is dominated by overpriced, vendor-locked black boxes. I build the open alternative.
In 2011 I built a commercial digital signage CMS to manage hundreds of IAdea players for a client because there was no affordable, SMIL-compatible solution that fit the job. Over the years, resellers started building their own proprietary players instead of paying for certified hardware. Most failed. So in 2017 I built an open-source media player that anyone could use and contribute to. The launcher, proxy, and hub followed.
The goal: a complete, open digital signage ecosystem using open standards like SMIL.
garlic-player: A SMIL-based media player for Linux, Android, Windows, and macOS. No license fees, no cloud dependency.
garlic-hub: The CMS behind it (run in Docker). Device management, content scheduling, playlist control.
garlic-launcher: Root-free Android launcher to keep players locked down and maintained in the field.
garlic-proxy: A proxy for restricted network environments
Together they form a complete, self-hosted digital signage stack — from content creation to playback. AGPL licensed.
→ garlic-signage.com for the full picture.
- Integrators running 50+ screens who are done explaining monthly SaaS invoices to clients
- IT departments that can't let content or device data touch a third-party cloud
- Developers who've wasted a weekend reverse-engineering black-boxes and are done with it.
One person. Ten screens. No budget for SaaS nonsense.
C++ · PHP · Java · JavaScript · Qt · Linux · Android · macOS · Windows
Found a bug? Open an issue.
Want to contribute? PRs are welcome, especially for platform support and SMIL features.
Need custom development or integration support? → smil-control.com
Currently somewhere with decent WiFi. Life's too short to spend it behind a desk.

