Funkhaus 1923

Guide · Site 10 of 25

How the poster machine was built

FUNKHAUS 1923 is a fictional Bauhaus internet-radio station streaming imaginary broadcasts from the Dessau workshops. The audience is anyone who loves constructed things; the page’s single job is to make you feel a 1923 exhibition poster running like clockwork — then let you read the day’s programme off it.

Palette

Strict Bauhaus primaries on warm paper. Nothing decorative: every colour is a signal. Red is the transmitter, yellow is the moving part, blue is the instrument, black is structure.

#E4E0D4

Warm paper — aged poster stock, not gallery white.

#D22B1F

Red — the dial, the live bar, the on-air lamp. Kandinsky’s square.

#E8A800

Yellow — the sliding square, never used for small text.

#1E56A0

Blue — metronome, focus rings, broadcast waves. The circle.

#16130E

Warm near-black — rules, rails, type. Pure #000 read too cold on this paper.

Type

One family, used hard. Archivo Black carries every display moment — stacked, negative-tracked, with “HAUS” set as a hollow outline between solid ink and solid red: the typographic bravery lives in the hero. Archivo (400–800) does labels and body, with wide-tracked uppercase eyebrows doing the 1920s programme-card work.

Funk / Haus / 1923

Archivo Black — display, uppercase, letter-spacing −0.02em

Jetzt im Äther · Now broadcasting

Archivo 700 — eyebrows and programme labels, tracked +0.16em

Techniques

The signature element is the kinetic poster machine: a single inline SVG whose shapes behave like meshed clockwork, choreographed with GSAP. Every rotating part spins about an exact svgOrigin; the two dashed gears turn at a 50:26 ratio (durations 20s and 10.4s) so their teeth genuinely stay meshed; the needle steps once per second on a steps(60) ease like a station clock; the rail stops flip the yellow square a quarter turn at each end of its run. A key build lesson: intro tweens and infinite spins must live on separate wrapper groups, or GSAP’s smooth-origin compensation captures the translated position and the gears orbit instead of spinning — found and fixed by reading the live transform matrices.

Iteration log

Pass 1 — Craftspacing · copy · conflicts
Pass 2 — Depthsignature · second read
Pass 3 — Hardening375px · a11y · perf