Brand

Crater is drawn in ink on plaster and lit like the Moon. The mark, the colours and the type are deliberately few; the renders and the numbers carry the rest. These are the rules, and the files.

Download the logo files

Mark

A disc minus an offset disc. It is a crater seen under raking light, its thick side the shadowed inner wall; it is a Boolean difference, the operation Crater leads with; and it is a lowercase c.

Construction: outer radius R, inner radius 0.76 R, the inner disc moved 0.17 R right and 0.07 R up. Never redraw it; use the files.

The mark: an outer disc with an offset inner disc subtracted
Outer disc R, minus the inner disc 0.76 R (dashed). The cross marks the inner centre.

Wordmark and lockup

The wordmark is “crater” in lowercase Geologica, weight 540, fully sharp, tracked −0.035 em, outlined. In running text the name is Crater, with a capital C. The Rust crate is still named boolcompute; say so where an install command appears.

Keep clear space equal to half the mark’s height on every side. Smallest sizes: the lockup at 20 px tall, the mark alone at 16 px.

Black on paper
White on void
  • No colour, gradient, outline or shadow on the mark.
  • No rotation or mirroring; the thick side stays lower left.
  • No mark on a busy render; place it on paper or void.

Colour

Strict monochrome, neutral grey, no accent. The data has its own hierarchy (Crater’s lanes are filled marks, competitors open ones), so colour would only decorate. Night is void with light text; day is paper with black ink.

Colour tokens, their roles and contrast
TokenRoleOn paperOn void
void #000000Night ground; ink on paper18.4:1—
basalt #161616Raised surfaces on void15.9:1—
basalt line #2B2B2BHairlines on void—1.5:1
ash #5E5E5ESecondary text on paper5.7:1—
regolith #9A9A9ASecondary text on void—7.5:1
dust #D6D6D6Hairlines on paper1.3:1—
paper #F0F0EFDay ground, plate ground—18.4:1
light #FFFFFFText on void, highlights—21:1

Text pairs meet WCAG AA; hairline pairs are not used for text.

Type

Geologica (Monokrom, SIL Open Font License) for everything: display, text and figures, with tabular figures in every number. Display sizes are set fully sharp on its sharpness axis, cut rather than rounded; text sizes keep the default.

IBM Plex Mono (SIL Open Font License) for code and for live readouts only, never for labels.

  1. Aa96 display
  2. Aa40 section
  3. Aa28 heading
  4. Aa21 lead
  5. Aa17 body, line height 1.6
  6. Aa13 caption
let csr = gpu.compute_resident()?.download().await?;

3.32 ms compute · 301 fps

Light

Two lighting regimes carry the identity. Night is the hero only: a body carved by Crater’s own Booleans, one low sun drifting so the crater shadows lengthen and shorten, pure black space, no stars, no glow.

Day is every other render: matte plaster on a seamless grey ground, occlusion from Crater’s ray queries, and the algorithm’s output drawn on the surface in black ink. Ink is always data.

Night: raking light on Crater’s output.
Day: plaster, with geodesic isolines in ink.

Light distance

Every measured time can carry how far light travels in it, at 299,792.458 km/s. It turns a millisecond into something you can picture, and it is always quieter than the time itself.

Below 1,000 km, whole kilometres; above, three significant figures. Results per second sit beside a time only at 100 ms or less, so a rate never reads slow.

3.32 ms301 fps

Light travels 995 km meanwhile.

Segmenting 2,651,904 triangles, GPU → CPU, from the benchmark tables.

Words

Plain, specific and sourced. Every number on the site comes from a benchmark document, through site/data/manifest.mjs, and names its source and date. State what each mode is best at.

Wording rules
WriteInstead of
CPU, GPU → CPU, GPU (the result stays on the GPU, ready to render)cpu-only, gpu-cpu, gpu-only, GPU only, GPU resident, or “GPU preview” for a result
Robust surface BooleanExact Boolean
Same answer, any mode, only where the GPU result is bit-identicalThe same claim for results within a tolerance
Within tolerance, with the tolerance“Matches the CPU” without a bound
Edge-graph geodesic distanceExact geodesic distance
Best for large meshesWhere the GPU does not pay
Live in your browser, apart from the benchmark tablesLive timings beside measured ones
Replay, for a baked plateA replay shown with a timing

Files

Outlined SVG; no font needed. Use black on paper and white on void.