Experiment · In-room TV

In-room TV

An exploratory prototype for the in-room TV in unmanned serviced apartments — app-based check-in, no reception, nobody on site. Not a funded brief; a conversation with a friend on the operations side of one such operator that turned into something worth arguing about in a room.

Two theses

The screen has no menu — content is indexed by stay phase. Hotel TVs default to categories (Services / Explore / Info / TV). What a guest needs is almost entirely determined by when it is: hours since check-in, time of day, nights remaining. So the surface is a state machine, and the most-needed thing is already the largest object on screen. The guest never navigates to find it.

A TV in a bedroom is a lamp before it is a display. There is no fixed background. The surface warms and cools with the hour and recedes at night. That's what makes "not a black box" a real property rather than decoration.

The prototype

Built in React + Vite, designed at literal 1920×1080 inside a transform-scaled stage so the prototype is pixel-accurate to the real panel. Below is the resting-state curve — live content, then settling, then receding as the room quiets down. Twenty minutes to fade, instant to wake, and a slow burn-in drift on two incommensurate sine periods so the surface reads as breathing rather than frozen.

Hard rules

  • Never get between the guest and their own Netflix. The path to streaming is the first affordance, always.
  • Wipe all streaming logins at checkout — privacy obligation and a real complaint driver.
  • No sound. Ever. No autoplay video, no welcome sting.
  • Never display the guest's name in large type, and never the door code. Ground-floor units have windows; cleaners see the screen between stays.
  • Never pure white text after dark. Warm it and drop contrast — don't just drop opacity.
  • One offer, one moment. The only upsell is late checkout, on departure morning.
  • No static high-contrast element in a fixed position. Burn-in across a fleet nobody services is permanent damage.

In situ at Limehome

Running on the actual panel in a Limehome apartment — the operator whose stay-phase reality the prototype was built against.

Stay-phase surface

Arrival shows Wi-Fi at maximum size — the guest's phone just dropped off roaming and everything else depends on it. Evening shrinks Wi-Fi to a line and surfaces what's still open to eat. Night is the hour, dimmed to something legible from the bed. Departure is checkout, one offer, and no other pressure.

In-room TV mood frame
← Back to experiments

A year of building

851 GitHub contributions from Oct 5, 2025 to Oct 7, 2026. Use arrow keys to explore days, Home for the first day, and End for the latest day.

851 contributionsOct 2025 — Oct 2026