Mac Classic
One-bit black and white: hard 1px outlines, dotted fills, no grey at all.
Construction · Outline
Nothing is filled. Every element is described by a stroke and the page shows straight through it.
Every style renders this same screen, so the only thing changing between two of them is the style. The component above is the file below, running.
Prompt
Design this interface in the Mac Classic style. Strictly one-bit — pure black on pure white, 1px outlines, and dotted patterns doing the work grey would do. Nothing is anti-aliased. Build every surface the Outline way:
The numbers in this prompt are printed from the tokens below, so it cannot drift from what the specimen renders.
What carries the look
- one-bit black and white
- 1px outlines
- dotted fills instead of grey
- no anti-aliasing
What this style refuses
- grey fills
- color
- soft shadows
- large radii
The refusals are the half that keeps generated interfaces from converging — a prompt that only says what to add gets the default look.
Tokens
Palette
#ffffff#000000#ffffff#000000#000000#ffffff#000000#ffffff#3f3f3f#c0c0c0#000000#ffffff#ffffff#000000Shape and type
Measured contrast — body 21:1 light, 21:1 dark; secondary text 10.53:1 and 11.54:1. Every pair clears WCAG AA in both themes, checked on each build.
Specimen · Specimen.tsx
import type { CSSProperties } from "react";
/**
* Vibary · Mac Classic
*
* One-bit black and white: hard 1px outlines, dotted fills, no grey at all.
*
* One complete product screen, rendered from the token object below —