All work

Issue #001 Emberlith

Plant managers can price their own switch off gas, then check the machine on a datasheet drawn to scale.

Concept project · Launch Site · 2026

The problem

Emberlith is made up. The problem isn't. Hard-tech startups build machines that run at 1,000°C, then launch a site that could be selling anything.

The hero says "innovative solutions for a sustainable future", which could sell yogurt, over a stock photo of wind turbines. The product is a box of hot brick. The buyer runs a plant with a gas bill, and nobody talks to them in tonnes of steam.

So I set myself a brief: make a thermal battery look like a consumer brand, and keep a datasheet an engineer would sign off.

The cast

The buyer
A plant manager with a gas bill, who buys steam by the tonne and heat by the MWh.
The skeptic
The engineer who has to sign off the datasheet.
The hero
Core E1: brick in a steel box, heated to 1,100°C on cheap wind and solar power.
The villain
The gas boiler, and its bill.

The plan

  1. Show the machine. The hero is a live section through the core: the rods glow while it charges, the heat creeps down the brick, and hot air runs down a duct to the steam generator. You see the product before you read a word.
  2. Speak plant manager. They buy steam by the tonne and heat by the MWh, so the calculator, a sample heat bill and the datasheet all use those units.
  3. Look expensive. It's near black, and the colors come from heat, ember red to white. Only hot things glow. The one gradient sits on the brick, the stored-heat meter and "Burn nothing."

The build

One long page, hand-built. HTML, CSS and 47 KB of plain JavaScript. No framework, no images: every visual is canvas, SVG or CSS.

The hero. The core charges and drains all day, on a loop.
On a phone, the core reaches the first screen.

The core is 67 to 175 bricks on a canvas, depending on the screen, each colored by the temperature at its height. The same temperatures are drawn beside the stack as a curve, and the dashed charge front sits where it crosses 650°C, so the bend in the curve and the change in the brick line up. Steam runs from the generator into the readout's "Steam out" at 12 t/h, all day, charging or not.

It runs at 30 frames a second, and a frame's code takes about 0.3 ms, or 1.4 ms with the CPU slowed down four times. It stops when it scrolls away or the tab hides. On first load it starts up: the rods switch on one by one and the heat sweeps down to mid-afternoon before the clock starts. Reduced motion gets one still frame.

One core, four times of day. The rods only glow while it charges. The steam never changes.
One made-up day drives the chart and the hero. Scrub it with a mouse, a finger or the arrow keys.

On a phone the chart, the calculator and the drawing run edge to edge. A sideways drag scrubs the day, a tap on a line of the key lights its callout, and the drawing sets its dimensions bigger and drops the title block it has no room for. Turned on its side, the phone gets the desktop's cover: the headline beside the core.

The calculator shows its working, right under the answer.

The brick joints in the drawing are one SVG pattern, projected onto each face. That keeps the whole drawing, sheet and title block included, to 12 KB.

A script draws the cutaway from the datasheet's own dimensions, so they can't disagree. The figure by the steam generator is 1.8 m tall.
  • Kiln#0C0907The warm black everything sits on
  • Ember#C42D0CThe coolest glow
  • Flame#FF7A1FHeat, and the main button
  • Amber#FFB35CLabels and focus rings
  • White heat#FFE8C4Readouts and results
Lighthouse performance, desktop
100
Lighthouse performance, mobile
99
Whole page, gzipped, fonts included
108 KB
Layout shift
0
The first screen gets its own small stylesheet; everything below the fold loads without blocking it. Measured with Lighthouse 12.8 on a plain local server with no compression. Desktop scored 100 in all three runs; mobile scored 99 in four runs out of five and 98 in the other. Accessibility and best practices: 100 on both. Turn gzip on and mobile scores 100, with the main text painted in 1.7 s on a throttled 4G phone.

Go poke around

  • Scrub the day on the grid chart, or press play.
  • Put your own plant's numbers into the calculator.
  • Point at a line of the datasheet's key to light its callout.

heyim.london/demos/emberlith/

Before / after

From "innovative solutions for a sustainable future" to "Store the sun in brick. Burn nothing."