Skip to main content
Taste Index
DESIGN.md Get The Files
Oct 14, 2026 • Taste Index Measured from typesafe.ai, then pushed further 🔬 View the files

Measured Then extended

one designer, every feature

A brand guide an agent can follow. Every value below was read from the live site's computed styles, then tagged so you know what's real.

M measured (computed style) V seen in screenshots I inferred to fit X extension, not on site
01 / Principles

seven rules the site already follows

01 · two voices

A soft grotesk talks to people; a pixel terminal font talks like a machine. Every label picks one.

02 · square everything

Radius is 0. Tiles, windows, buttons, images. Only code (6px) and tables (8px) soften.

03 · one page, one colour

Each page owns a single background: paper, pink, sage, ink. Contrast comes from ink blocks.

04 · magenta means "you"

#d45bb6 appears only where the pointer is: hover, active chip, current tile.

05 · huge and tight

Headlines run at 150px with 0.8 line-height and touch. Body stays 17px everywhere.

06 · the UI is a toy computer

Windows with title bars, version numbers, clocks, Game of Life, base64. Software as decoration.

07 · motion computes

Things tick, blink and loop linearly. Hovers swap instantly. Nothing floats in.

02 / Color

every colour, measured

Hex values are the site's own Framer tokens and computed colours. Click a swatch to copy it. Usage is where it was found on the six pages sampled.

Schemes

5 measured + 8 extensions · same roles · contrast read live (✕ = below AA) · "use" restyles everything, modules included
PaperM · home

put jev to work

Body copy at 86% ink.

#fefefe / #1e1e1e
PinkM · panels, legal

we took the opposite direction

Tag text = page colour.

#f386a1 / #1e1e1e
SageM · blog

thoughts

For long reading.

#abbab9 / #1e1e1e
NightM · contact, FAQ

let’s talk business

Pink windows sit on ink.

#1e1e1e / #fefefe
GreenM · blog band I hex

typesafe raises series a

#03aa5c at 74% over paper.

#44c086 / #1e1e1e
SignalX · after AOI

be memorable

Yellow under the pointer, nothing else. Link

#0b0b0b / #f7d14b
KleinX · ultramarine

blueprint mode

Cream type, yellow hover. Link

#2433d6 / #ffe14d
TomatoX · poster

act now.

Hover goes ink on red. Link

#ff5a36 / #1a1a1a
ForestX · deep green

field notes

Lime pointer on pine. Link

#11382a / #c6f432
LilacX · soft violet

calibrated, calmly

Ink hover, violet page. Link

#cbbcf3 / #1b1530
ButterX · warm yellow

printed matter

Cobalt pointer. Link

#f5e6a3 / #2747ff
ConcreteX · cool grey

signal orange

Darker orange for link text. Link

#d8d8d3 / #ff4a1c
MonoX · black on white

no colour at all

Hover simply inverts. Link

#ffffff / #000000
03 / Type

huge, tight, title case

Sizes switch at the site’s breakpoints (1200 / 810), not fluidly. Headings are typed in sentence case and CSS capitalises them. Resize the window to see the steps.

Hero · h1 M150 / 94 / 54 pxlh 0.8 · 500 · 0 · capitalize

put jev to work

Section · h2 M64 / 41 / 33 pxlh 0.9 · 500 · capitalize

frontiers, old and new

Card title M48 / 48 / 30 pxlh 0.9 · 500 · capitalize

typesafe raises series a

List title M30 px · lh 0.9 · +0.02em

lies, damned lies, and benchmarks

h3 M26 / 22 px · lh 1.2 · 500sentence case kept

Side-by-side demonstration

Lead M22 px · lh 1.2 · 400 · +0.05em

Reinforcement Learning from Human Feedback (RLHF) has led to LLMs that are optimized for human preferences.

Nav tile M18 px · lh 1 · 500 · +0.03em
EnterpriseThoughtsContact Us
Body M17 px at every widthlh 1.2 · 400 · +0.05em · 700 for bold

Models have been superhuman at chat for years, so where is all the automation? Think of Jev as a frontier-intelligence function call: unstructured state in, typed probabilistic decisions out. Inline code uses Fragment Mono.

h5 M16 px · lh 1 · −0.02em

Nuance

Small / footer M15 px · lh 1.2 · +0.05em

TypeSafe AI © 2026 · Terms of Use · Privacy Policy

Mono label MJetBrains Mono 30013 / 12 / 10 px · +0.05em · capitalize
what are system one models? what is jev?not chat · a new model · built for automation[b.64] Vm0weE1HRnRVWGRPVldScFRUSm9i
Pixel MLisaTerminal → VT323 I36 / 28 / 18 / 14 px · lh 1 · +0.01em
RLVRCompany NewsOct 9, 2026 • TypeSafe NewsClock Tool 1.1

Fonts and free substitutes

RoleOn the siteLicenceUse instead
Display (500)Die Grotesk C MediumCommercial, self-hosted IInter Tight 500, closest free neo-grotesk with tight default spacing
Text (400, faux 700)Die Grotesk C RegularCommercial IInter Tight 400 / 700
Pixel / machine voiceLisaTerminal Paper 2X3Y MediumCommercial IVT323, scaled ×1.18 (--pixel-k)
Mono labels (300)JetBrains MonoFree (OFL) MSame font
Inline codeFragment MonoFree (OFL) MSame font

Type presets

Xsame roles and sizes, other voices · "use" restyles the page
Measured

put jev to work

Inter Tight + VT323 + JetBrains Mono. Closest free match.

Glider 1.1
Space

put jev to work

Space Grotesk + Space Mono. Quirkier, more engineered.

Glider 1.1
Editorial

put jev to work

Instrument Serif headlines, Silkscreen pixels. For essays.

Glider 1.1
Wide

put jev to work

Archivo at 125% width, Pixelify Sans. Louder posters.

Glider 1.1
Condensed

put jev to work

Barlow Condensed 600. Fits more words per line.

Glider 1.1
04 / Shape

square, framed, dotted

No radius, no shadows, almost no borders. Structure comes from ink blocks, 1px drawn outlines, corner crop marks and dot fields.

radius M
0px · everything6px · code8px · tables
shadow M

None, except the cookie banner: 0 8px 24px #00000088.

crop marks M
10px L · 1.2px stroke · every section
dot field V

Spacing used

Mno 4/8 grid · these numbers recur
3
5
10
20
30
50
100
200

Grid

M1240 frame · 100 margin at 1440 · 10 on phones · panels inset 5
1001240 frame · content centred100
05 / Components

the pieces that repeat

All live. Hover them: everything that reacts turns magenta.

Nav tiles + dropdown

M36px · flush to top · 5px gaps · hover instant
tags · knockout text M
Company NewsThoughtsMediaCompany News
filter chips M

Link-headings + text links

M4px bar · colour eases .5s

Body links stay underlined: Read the Case Study · Privacy Policy · ∵ Back

Windows

M V outlinesink bar 20px · 3px frame · panel
Glider 1.1
Game of Life
Clock Tool 1.1
Wednesday, Oct 14, 202616:41:13
Savings
88%lower cost*
TypeSafe AI
Version 0.01
©2026. All rights reserved.
Made in SF. With Love.
Speed vs. Sonnet●
Jev [TypeSafe]193.6x
Haiku 4.56.2x
Opus 52.1x
FAQ M

we give a FAQ

what are system one models? what is jev?
A new class of AI model built for decisions inside software. Send structured questions, get typed decisions with probabilities and confidence back.
is jev just a smaller LLM?
No. It gives up string generation to answer typed questions in one parallel pass.
how much does jev cost?
$0.042 per million input tokens. Output is too cheap to meter.
table + code M
Existing LLMsSystem One + Jev
SamplingSequentialParallel
Speed3–329 s70–500 ms
OutputsStringsTyped values

Inline: jev.ask(state)

cookie banner · the one shadow M
With your permission, we use cookies to track usage behavior for improving our applications. Privacy Policy
06 / Motion

it ticks, it never floats

The site barely animates. On load the headline is already there; one pill pops from scale 0. What moves is software: a clock, a glider, blinking dots, bars on a linear loop. Links ease their colour over 0.5s with cubic-bezier(.12,.23,.5,1). Tiles and the phone menu swap instantly.

WhatDurationEasing
Text link / post title colour → magenta0.5scubic-bezier(.12,.23,.5,1)M
Nav tile bg → magenta, dropdown, phone menu0s (instant)—M
Blinking dots in SVG art2s, infinitelinear (on/off)M
Speed race bars18.248s, infinitelinearM
"Watch launch video" pill on load≈0.5sscale 0 → 1, curve not capturedV
Clock (1s) · Game of Life steps1s / stepsteppedM I rate

Going larger

Xmarquee, horizontal scroll, scramble, dither · all linear, stepped or a hard swap
decisions∵not strings⩆
we took the
RLCD
opposite research direction scroll ↓ moves this →
scramble on hover / reveal X

calibrated decisions

Jev.Confidence 0.93

Resolves through base64 glyphs in 30ms steps, left to right. Use on numbers and labels, never on body copy.

1-bit dithered spheres V look X code

Motion presets

Xswitch in Taste.cfg · every effect below obeys the preset
Computed

The site’s own register. Hovers swap in 0s, entrances step in 4 frames over 240ms, tickers click digit by digit. Default.

steps(4, end) · 240ms
Snappy

Your playbook rule: things whip in from below on power4-out in about 180ms, with binary opacity and no fades.

cubic-bezier(.23,1,.32,1) · 180ms
Smooth

Long settles for editorial pages. Masks instead of fades, 760ms on power3-out.

cubic-bezier(.22,.61,.36,1) · 760ms

Motion lab

Xported from the HyperFrames animation rules to WAAPI · data-fx="name" · press Run to replay
waterfall

typed decisions your software can act on

waterfall-entry · words whip up, binary opacity, overlapping starts

mask

nothing fades. it rises.

mask-reveal-up · words rise out of their own clip

decode

JEV.CONFIDENCE

hacker-flip-3d · chars hinge down through glyphs

scramble

RLCD 0.93

(v1) · base64 glyphs resolve left to right

ticker

193.6x

vertical-spring-ticker · digits roll a full turn, stepped on Computed

count

$41,200

counting · tabular figures count up

glitch

no type errors

chromatic-glitch · RGB split on a quantized hash, snaps sharp

marker

built for automation

css-marker-patterns · accent bar sweeps behind words

bars

stat-bars-and-fills · bars grow from the baseline

pop
SOC2ZDRVPCSLA

spring-pop-entrance · scale 0→1, smooth settle, no bounce

slam

notice more.

decide faster.

act now.

kinetic-beat-slam · one beat, a different entrance per line

type

ready_

typewriter · stepped chars + blinking caret

draw

svg-path-draw · strokes draw themselves

Hairline figures

X@lucasmarkes/hairline · 33 isometric figures that answer the pointer · themed from the scheme · data-hairline="name"
Terminal.fig 0.5
Router.fig 0.5
Phosphor.fig 0.5
Exploded.fig 0.5

Phone menus

tap "Menu" in each phone · pick one for this page’s own nav in Taste.cfg
∵
Docs
Company News

put jev to work

Create Account
Tiles M · instant stack, last tile magenta
∵
Docs
Thoughts

the bitterest lesson

Iris X · Shipped’s circle reveal, .75s fold
∵
Docs
Company News

introducing jev

Window X · Shipped’s pill-grow as an OS window
∵
Docs
Index

be memorable

Index X · giant rows rise in masks, accent on hover
Section Index menuhover a row · the fill enters from the side you crossed · X after weareactsofimagination.com
scheme: signal · type: editorial
07 / Modules

every block, desktop and phone

Menus, heroes, blog pages, marketing sections, gestures, product UI and motion moments, built only from this system. Each one renders live in a 1280px browser and a 390px phone, so the breakpoints are real. Pick one from the menu, use ← → to step through, change the scheme or motion in Taste.cfg, or open it full size.

08 / Voice

confident, nerdy, a little smug

Copy below is quoted verbatim from the site M. The patterns under each list are the read I.

headlines
  • The First (Public) System One Model; Jev Gives AI The Properties Of Code
  • We Took The Opposite Research Direction
  • 193.6x Faster, 444.6x Cheaper.
  • Jev’s Intelligence Per Dollar Is Literally Off The Charts.
  • We Give A FAQ
  • Let’s Talk Business

Claim first, number second, joke third. Precise decimals. Title Case done by CSS.

labels (machine voice)
  • Oct 9, 2026 • TypeSafe News
  • Jev.Confidence
  • TS.AI.OS1
  • Clock Tool 1.1
  • Version 0.01
  • [b.64]

Name UI like software: dotted identifiers, version numbers, dates with a bullet.

buttons + links
  • Contact Us · Talk To Sales
  • Create Account · Join Discord
  • Watch Launch Video ▶
  • Read the Case Study
  • View announcement
  • ∵ Back

Two or three words, verb first. Odd glyphs (∵ ▶) stand in for icons.

body asides
  • Extraordinary claims require extraordinary evidence so see below for the receipts. 💅
  • We love skeptics, and are skeptics ourselves.
  • We raised a really big Series A led by a16z 🤑
  • Output tokens: FREE (too cheap to meter).

First person plural, one emoji at the end of a casual line, never in a headline.

09 / Do + Don’t

the short version

Do
  • Pick one page colour per page; build contrast with ink blocks.
  • Put labels in pixel or mono, everything people read in the grotesk.
  • Write headings in sentence case and let text-transform: capitalize do Title Case.
  • Use magenta only for the thing under the pointer.
  • Wrap demos, data and widgets in a window with a version-numbered title bar.
  • Mark section corners with 10px crop marks.
  • Back every claim with a number and a link to proof.
Don’t
  • Round corners, add drop shadows or use gradient buttons.
  • Fade or slide content in on scroll; it should already be there.
  • Ease hover backgrounds. Tiles swap in 0s.
  • Mix two page colours in one viewport, outside a framed panel.
  • Set body copy in the pixel font, or headlines in mono.
  • Shrink body text on phones. It is 17px everywhere.
  • Put emoji in headings or buttons.
10 / Template

make the next taste index

This folder is the template for Shipped. Class names, hooks and file names stay the same in every index, so agents and the module gallery work on any brand. Only the values change.

01_Measure.txt
Run node _measure/extract.cjs <out> <url…> (or Shipped’s pipeline/capture-site.mjs) on 4–6 pages at 1440 and 390. Keep the JSON and screenshots in _measure/ and refs/.
02_Tokens.txt
Rewrite section 1–3 of brand.css (palette, schemes, type) and tokens.json. Tag every value M / V / I / X. Keep the role names (--bg --fg --accent --chip-fg …).
03_Components.txt
Restyle the component classes to the measured brand: radius, borders, tile shape, window chrome. Don’t rename them; the modules depend on them.
04_Write.txt
Rewrite DESIGN.md (brief, principles with reasons, colour, type, components, motion, voice, Do / Don’t), quoting the site’s real copy.
05_Verify.txt
Open the gallery, step through every module in every scheme. No page wider than the viewport at 390, no console errors, contrast readouts without ✕ on the brand’s own schemes. Full checklist in TEMPLATE.md.
Taste.cfg
Taste.cfg 2.0V
Scheme
Type
Motion
Phone menu (this page)