Product Design · LG webOS TV · Open Source
An Apple TV feel for your LG TV.
A fast, remote-first home screen for LG webOS TVs, with an Apple TV feel. Free and open source: no ads, no telemetry, no accounts.
The problem
The stock LG Home is cluttered. Luma makes the best screen in the house feel calm.
On a premium OLED, the interface is the weakest part of the experience: ads and sponsored tiles, recommendations nobody asked for, inconsistent icons, laggy navigation, and no way to bring your own movies, games or smart home into one place.
Luma is a fast, remote-first home screen for LG webOS TVs with an Apple TV feel. It is free and open source under the MIT license, and runs on any LG webOS TV as a normal app. I own the whole product: research, UX, visual design, motion and typography, taken all the way to working code.
Luma costs nothing. No ads, ever.
The full source is on GitHub under the MIT license: install the latest release on your TV, read the code, or fork it. If Luma makes your evenings nicer, a coffee keeps the updates coming.
A tour
One screen. Everything you watch.
Home
A greeting that comments on the weather, a clock, favourite apps and stacks of real content: what was just added to Jellyfin, your music, your Steam games.
- ◎Favourites row
- ≡Content stacks
- ☀Cheeky weather headline
- →View Library behind every row
Widgets
Weather with hourly and 10-day forecasts from Open-Meteo, crypto prices with charts, an HDMI preview and a Home Assistant status line, in four sizes on one grid.
- ☁Open-Meteo, no API key
- ₿Crypto charts
- ▭HDMI input preview
- ⌂Home Assistant line

Apps
Every installed app in one calm grid with categories, so the stock launcher's ads and sponsored tiles simply never show up.
- ▦Category filter
- AaApp names on or off
- ⌕Find an app
- ✕No sponsored tiles
Smart Home
Home Assistant paired by a QR code, so the token is never typed on the TV. Status chips, scenes, live cameras and devices you toggle with the remote.
- ▣Pair by QR code
- ◐Climate, alarm, lights
- ◉Live cameras
- ⏻Toggle devices

Live wallpapers
The room keeps moving.
Aerial footage plays behind the interface, decoded in hardware on the TV's own media pipeline, so it stays smooth at 4K and never flashes black or green. Pick whole collections, with the Amazon aerials as the showcase, or single clips. Panels are translucent dark glass, so the motion stays visible while text stays readable from the sofa.


Built for the remote
Designed for three metres.
Luma is built for a D-pad and a sofa: clear focus, generous targets, cards that lift when they are focused, and Back always steps exactly one level out. One accent colour, picked by you, marks focus everywhere.
Movies, series & music
Your library, not theirs.
Jellyfin and Plex with backdrops, cast, seasons, episodes and More like this. A separate built-in player handles audio and subtitle tracks, quality and seek previews, and syncs progress back to the server.
No typing with the remote. Sign in with a short code or scan a QR code with your phone.
Games
From the sofa to Steam.
Your Steam library from a PC running Sunshine or Apollo, with official artwork. Game pages work like movie pages, and Play opens the stream in Moonlight.


Make it yours
Settings that feel like the TV.
Wallpapers, accent and gradient, heading and text fonts, UI resolution, stacks, widgets and inputs: every page is a frosted panel with a live preview on the left. Drag the rail.




Design decisions
Calm is a feature.
TV-first layout
Designed for three metres and a D-pad: clear focus states, generous targets, and Back that always steps exactly one level out.
Frosted glass
Translucent dark panels over the moving wallpaper. One graphite palette instead of many colours.
One accent
A single citrus gradient marks focus, the active tab and one word of the headline. Users can change it, but there is only ever one.
Type for distance
A rounded heading face for the greeting and titles, a clean text face for UI, tuned for legibility from the sofa.
Calm motion
Soft easing, cards that lift on focus, scrolling that reveals rather than jumps. Profiled on the TV so nothing drops frames.
Native rendering
No web view for the launcher. Icons and logos are vector meshes compiled at build time and drawn on the GPU, crisp at 4K.
Every screen
27 screens, one system.
Home, media, games, widgets and every settings page, straight from the renderer at 1920×1080. Tap to open.
Design language
Graphite, glass and one gradient.
Wordmark
Glass
Palette
Typography
Two mob families clash in a war that threatens to topple empires and lives.
ManropeInterface textUnder the hood
Native, down to the pixel.
The launcher is written in Rust and draws itself with OpenGL ES, so it stays smooth on real TV hardware.
01Launcher
Own text and vector pipeline: TrueType parsing, signed-distance edges, image decoding off the render thread.
02Video wallpapers
The webOS hardware media pipeline through small C helpers.
03Player
A separate web app installed alongside the launcher.
04Integrations
Servers are discovered automatically, artwork comes from the sources.
05TV integration
Root is optional: it adds opening Luma at power-on and HDMI signal detection.
06Build & release
Cross-compiled and packaged for the TV, published to a Homebrew Channel feed.
Process
Design to code, 160 times over.
I take my designs all the way to working code, directing AI coding agents (Claude Code and OpenAI Codex) and reviewing every change. Every build is installed and checked on a real LG OLED C1 65″ 4K TV before release.
Luma started as a fork of the open-source ecklf/lg-luma and has since been redesigned and largely rebuilt: a new Home, settings, widgets, media, games and smart-home features.
Respect by default
Nothing to sell you.
Ads
No sponsored tiles and no recommendations you never asked for.
Telemetry
Nothing is tracked. Settings and tokens stay in a local file on the TV.
Accounts
Install it and it works. Jellyfin, Plex and Home Assistant pair by code or QR.
LG webOS TV
Runs as a normal app. Root is optional and only unlocks a few extras.
Like Luma? Keep it free.
Luma is a one-person, open-source project with no ads and no paid tier. A star on GitHub helps other LG owners find it, and a coffee pays for the next 160 builds.
Latest release: v2.2.160 on GitHub