← All notes

My TV Was Too Slow, So I Built My Own Launcher

My cheap Google TV glitched every time I tried to open an app. So I replaced the home screen with a small one I built myself, and learned that less UI was the whole fix.

My TV was slow. It's a Hisense Google TV, the cheap kind, and the home screen would stutter and glitch every time I tried to pick an app. One night it opened to a Halloween ad before I could even get to Netflix. That was about enough.

I'd seen a post on X from someone who had cleaned up their own TV, and it gave me the idea. I started by debloating: I disabled 25 apps I never use over ADB (Android Debug Bridge, the tool that talks to an Android device from your computer). All of it is reversible. It helped, but the home screen itself was still the problem. So I decided to replace it.

I built MiniHome, a small custom launcher for Android TV, with Claude Code as my pair programmer. It's written in Kotlin with Jetpack Compose and styled loosely after Apple TV: two rows of app banners, a clock, and a grid with all my apps. Press and hold on an app to move it or hide it. That's it, and that's on purpose.

The hardest part wasn't the UI. It was getting the Home button to open my launcher, and keeping it that way after a reboot. The normal ways of setting a default home app didn't stick on this TV. What worked was having MiniHome watch for the stock home screen and open itself right on top of it. Then a Hisense system app kept undoing my settings on reboot, so I added a small healer that repairs the setup every time the TV starts or MiniHome opens.

Working with Claude Code went well. It handled a lot of the plumbing and ran tests as we went. Where I stepped in was the UI. I'm picky, so I reworked a lot of how it looked and felt.

But this is where the cheap TV kept me honest. I wanted a polished background and more animation, but too much going on is what made the stock home screen jumpy in the first place. Every extra layer had to earn its place. The fix wasn't a fancier home screen. It was a smaller one.

The numbers back it up. On the same 52-press remote test, the stock home screen had 51% and 73% janky frames across two runs. MiniHome came in at 3.3% and 1.4%.

Now the TV opens to my apps, with no ads and no lag. Google's launcher is still installed, and every change I made can be undone with one script. If you've got a budget TV that drives you nuts, the problem might not be the TV. It might be everything running on top of it.

Phillip’s terminal

/ explore

A different way to look around. Same projects. Same person.

Phillip Green. Software engineer and independent builder.
Type help to get started.
↑↓ history / Tab completeCuriosity is a good command.