Grundform

Grundform

A visual identity for mobile apps built from three shapes, three hues, one geometric typeface and a black rule.

Drawn from the 1923 Weimar exhibition poster tradition, Kandinsky's form-and-colour correspondence (circle–blue, square–red, triangle–yellow), and the black-grid structure of De Stijl. Everything below is a token you can lift into a design system; the phone mock-ups at the end show the tokens in use in both themes.

Principles

Colour

Core hues

Screen-calibrated from the poster reds, blues and yellows in the references. The deep variants are for pressed states and for text on tinted backgrounds.

Red#D8262C
Red deep#8E1421
Blue#1E5AA8
Blue deep#123C74
Yellow#F2B20A
Yellow deep#B77F00
Black#000000
Paper#F3EFE7

Theme roles

Dark-mode primaries are lifted two steps so they hold contrast against black; text-on-colour flips to black accordingly. Both columns pass WCAG AA for body text on their canvas and on-colour pairs.

Light

Canvas#F3EFE7
Surface (cards, sheets)#FFFFFF
Surface 2 (inputs, chips)#E9E4DA
Ink / rules#000000
Ink 2 (secondary text)#4A4741
Ink 3 (placeholders)#8A857C
Hairline dividers#D6D0C4
Primary action#1E5AA8
Accent / danger#D8262C
Warning / focus ring#F2B20A
Success#2E7D4F

Dark

Canvas#000000
Surface (cards, sheets)#1B1B1B
Surface 2 (inputs, chips)#2A2A2A
Ink / rules#F3EFE7
Ink 2 (secondary text)#C9C3B7
Ink 3 (placeholders)#8A857C
Hairline dividers#3A3A3A
Primary action#3E7DD1
Accent / danger#E8434A
Warning / focus ring#F2B20A
Success#4CA36E

Data visualisation

Categorical series use the three primaries first, then the extended hues from the interior reference (orange, cyan) and black/paper. Sequential scales are single-hue steps of one primary, as in the concentric red poster. Never mix the extended hues into UI chrome.

1
2
3
4
5
6
7
Sequential red: #D8262C → #B8202A → #8E1421 → #5C0C18 → #2F0510

Typography

One family, Jost — a geometric sans in the Futura lineage that the Bauhaus workshops used. Fallback stack: Futura, Century Gothic, Avenir, then system sans. Weight and size do the work; there are no italics in the system and no all-caps labels. Display sizes use tight tracking; body text is set loose enough to read on a small screen at arm's length.

Display 700 / 40 / 1.05 / −0.03em
Form follows function
Title 600 / 28 / 1.15
Your week at a glance
Heading 600 / 22 / 1.2
Recent activity
Body 400 / 17 / 1.5
The workshop opens at nine. Bring the drawings from last session and the model in card.
Label 500 / 15 / 1.3
Save changes
Caption 400 / 13 / 1.4
Updated 4 minutes ago

Shape and spacing

Radius 0

Cards, sheets, buttons, list containers, images. The default.

Radius 4

Text inputs and code chips only — enough to read as fillable, not enough to read as soft.

Radius full

Avatars, FABs, toggles, segmented controls, tag pills. Anything born from the circle.

Rules: 2px in ink colour for structural borders (cards, tabs, nav). 1px hairline for row dividers inside a container. No shadows.

Spacing: a 4pt base scale — 4, 8, 12, 16, 24, 32, 48, 64. Screen gutters are 16; card padding is 16; section gaps are 24. Touch targets are 48pt minimum, buttons 48 tall.

Iconography: build icons from the three primitives on a 24pt grid with 2pt strokes and flat ends. Filled shapes for selected state, outlined for unselected. Status glyphs follow the shape vocabulary: circle for success or presence, square for a stopped or neutral item, triangle for a warning.

Components in both themes

The same screen rendered against each token set. The circle-and-square FAB, black-rule tabs and paper-on-black inversion are the recognisable moves; everything else stays quiet.

9:41●●●

Today

TasksNotesTeam
Open tasks7
Review the flood-risk layersDue 3 pm
Send the poster proofsStudio
Renew workshop licenceExpires Friday
Licence expires in 5 days
+
9:41●●●

Today

TasksNotesTeam
Open tasks7
Review the flood-risk layersDue 3 pm
Send the poster proofsStudio
Renew workshop licenceExpires Friday
Sync failed. Check your connection and retry.
+

Component notes

Grundform — token set v1. Jost via Google Fonts; all other assets inline.