StealThis .dev

Interior — Room Visualizer

A warm editorial room visualizer where a hand-styled living room repaints itself live as you pick wall, floor and accent palettes, swap material swatches on the sofa, rug and pillows, and dial the daylight — then save whole looks as chips you can recall or delete, with a running spec of the exact tones and finishes in play.

Open in Lab
html css vanilla-js
Targets: JS HTML

Code

The visualizer centers a pure-CSS living room — a back wall, a run of floorboards, a low sofa, a framed print, a rug and a scatter of pillows — rendered entirely with gradients so it repaints instantly. A curated column of controls sits alongside: named wall palettes (Plaster, Sage, Clay Wash), floor finishes (Pale Oak, Walnut, Ash) and accent tones, each a tappable swatch row, plus material chips that reskin the sofa in bouclé, linen or velvet and shuffle the pillow and rug fabrics to suit. A daylight slider warms or cools the whole scene, tinting the light spilling across the floor.

Every choice updates a live spec panel that lists the current wall, floor, accent and upholstery with their hex values, and any swatch copies its hex to the clipboard on click with a small toast. Press Save look and the current combination is captured as a labelled chip in the saved-looks rail; click a chip to restore that exact room, or use its remove control to discard it. A shuffle button rolls a tasteful random scheme for quick inspiration.

Controls are real buttons and inputs — keyboard reachable with visible focus rings, aria-pressed on the active swatch, and an aria-live region announcing changes. Under 520px the room stacks above a single scrollable control column, swatches wrap, and the editorial whitespace, thin walnut rules and muted natural palette carry through.