Gauss
Colophon how it was drawn

Drawing a field nobody can see.

Gauss is an electrostatics sandbox for the curious: place positive and negative charges and the electric field draws itself — lines of force from plus to minus, equipotential contours nesting around each pole, and a test charge that falls along the field it can never touch. Its one job is to make an invisible field feel like something you can grab and reshape with your hands.

01 Palette

A laboratory ground so the field can glow against it. The two accents are the only saturated colours on the page, and they carry a physical meaning: warm for positive, cool for negative — the convention every physics textbook already trained your eye on.

Lab black
#0B0D12
The dark bench. Near-black with a faint blue cast so the field reads as light emitted, not ink printed.
Positive line
#E45A4E
Warm ember. Lines leaving a positive charge; the source, pushing outward.
Negative line
#4E86E4
Cool blue. Lines converging on a negative charge; the sink, pulling in.
Equipotential grey
#5A6273
Neutral slate for the potential contours, faintly tinted by sign so they never fight the lines.
Test-charge gold
#EAD79E
A single warm probe — deliberately neither red nor blue, so a released charge reads as a visitor, not a pole.
Label ink
#C7CEDC
Cool light grey for body copy — 11:1 on the ground. The accents are for field marks only; text never uses them.

02 Type

Gauss
Space Grotesk · display

A grotesque with a slightly technical, drawn-with-a-compass feel — engineered but not cold. It carries the wordmark and the headline without any decorative fuss the field would have to compete with.

|E| 0.42
IBM Plex Mono · readouts

Every number — charge count, net charge, field strength at the cursor — is monospaced with tabular figures, so values change without the layout twitching. It reads like instrument output, because that is what it is.

03 Technique

04 Iteration log

Pass 1 · Craft

Re-read the render at the resting dipole. The first cut seeded field lines from both charge signs and kept the negative-seeded ones if they escaped the frame — which sprayed a handful of stray blue lines outward from the negative pole, reading as if the sink were a source. Rewrote the seeding: lines originate from positive charges (or from negatives only when no positive exists), so a plain dipole draws cleanly. Bumped equipotential opacity so the nesting rings — the "density reads strength" story — actually register against the ground.

Pass 2 · Depth

Enriched the signature: connecting lines now split red-to-blue at their midpoint, so the field visibly leaves plus and arrives at minus. Added the second-read detail — a live field-probe vector that follows the cursor, pointing along the local field with a length that reads its magnitude, so you can feel the invisible force by moving the mouse. Tuned the test-charge physics (clamped acceleration near the poles, capped speed) so a released probe curves convincingly instead of slingshotting.

Pass 3 · Hardening

Drove every interaction under headless Chrome: dragging a pole changes the field (path-hash + screenshot diff), a released probe measurably accelerates along a line, adding a charge re-solves the field — all with zero console errors. Fixed the 375px layout, where the readout had been floating over the top of the field; it is now a single bottom scrim bar (that redundant panel border was the ornament cut by the Chanel rule). Confirmed the reduced-motion path renders the full static field plus a still trajectory, never a blank frame. The field is SVG, so it stays crisp at any pixel ratio with no device-pixel-ratio scaling to manage.