Spreadsheet Grid
Cells all the way down: every value in a ruled box, nothing floating.
Construction · Terminal
Everything lands on a character grid: block fills, no rounding, no shadow, and an edge that is just where one cell ends and the next begins.
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 Spreadsheet Grid style. The grid is the layout. Every value sits in a ruled cell, alignment is strict, and there is no padding that is not necessary. Build every surface the Terminal 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
- ruled cells everywhere
- strict alignment
- minimum necessary padding
- grid as layout
What this style refuses
- floating cards
- rounded corners
- generous whitespace
- decorative color
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#0d0f11#ffffff#141719#c8cdd3#31363b#16191c#eef0f2#565c63#979ea6#106b3f#41b87c#ffffff#03150cShape and type
Measured contrast — body 17.65:1 light, 16.81:1 dark; secondary text 6.76:1 and 7.09:1. Every pair clears WCAG AA in both themes, checked on each build.
Specimen · Specimen.tsx
import type { CSSProperties } from "react";
/**
* Vibary · Spreadsheet Grid
*
* Cells all the way down: every value in a ruled box, nothing floating.
*
* One complete product screen, rendered from the token object below —