← Projects
A beansontoast product

Smart TV for Browser

A smart-TV home screen in the browser, with a phone as the remote.

Started
Last change

What it is

A smart-TV home screen that runs in the browser. It boots with an animated power-on, opens on a 10-foot grid of app tiles that glow and scale on focus, and is driven like a TV: arrow keys or an on-screen D-pad, with OK, Back and Menu. Opening an app plays a launch splash and hands over to the channel's own website; after about 45 seconds idle, an ambient clock fades in.

For Anyone watching streaming sites in a browser on a big screen who would rather drive it like a TV than with a mouse.

How it works

  1. The appsone entry each in services.json: name, logo, link and background colour
  2. Spatial navigationnorigin-spatial-navigation moves focus by geometry, mirrored onto real DOM focus
  3. The channel's own websiteopened directly after the launch splash; the companion extension brings you home

Offline without build-tool coupling: a native manifest and a hand-written service worker cache the app shell.

Decisions

  • Geometry-based spatial navigation: focus moves the way a remote expects, not in DOM order.
  • Motion drives the boot animation, the focus springs and the screensaver.
  • The only backend is a Cloudflare Durable Object per pairing code: phone and screen open a WebSocket to the same room, so pairing works on any network with no NAT negotiation.