Browse all of Kata

Reference screens

Source docs/design/reference/SOURCES.mdMarkdown

On this page

Forty screens from the 46-app, 315-screenshot study behind the design language. Every file is a publicly published App Store marketing screenshot, kept here as internal design reference and credited to its publisher below. They are not Konjo assets and must never appear in Konjo's UI, marketing, or store listing.

Agents: open these. Read renders a .jpg and you will actually see it. When you have built a screen, open the closest reference and find the specific difference in spacing, weight, or ratio. "Roughly similar" is not the bar.

Ratings are App Store US at time of capture (2026-08-22) and are context, not proof — the calibration record explains where the evidence for each claim actually comes from.

Do not measure pixels off these files. They are downsampled, and several are keystoned marketing mockups rather than real screens. The adversarial review pass found individual measurements taken this way off by anywhere from 35% to 3×. Read them for mechanism — what is loudest, what order things appear in, what carries hierarchy — and take every number from Konjo's own tokens.

Athletic

The register Konjo lives in. Bold, high-contrast, one loud thing per screen.

File App Publisher Rating What we take from it
nike-run-club-02.jpg Nike Run Club: Running Coach Nike, Inc 4.77 / 417,580 The hero ratio — the stat is decisively larger than the page title. Secondary stats packed left, value on top, label below.
nike-run-club-01.jpg Nike Run Club: Running Coach Nike, Inc 4.77 / 417,580 Loudness spent once — full-bleed photo, one display line, nothing else competing.
whoop-03.jpg WHOOP Whoop Incorporated 4.80 / 65,693 A single huge number against a small label; inset hairlines between metric rows. Airy for a data screen.
whoop-02.jpg WHOOP Whoop Incorporated 4.80 / 65,693 Uppercase micro-labels inside cards — the label treatment done at the right size.
oura-01.jpg Oura Oura Health Oy 4.86 / 283,299 Eyebrow -> hero -> body -> one pill button. The vertical rhythm we copy; the gradients we do not.
strava-02.jpg Strava: Run, Bike, Walk Strava Inc. 4.81 / 369,177 Activity row anatomy: author, title, stat row, media, social proof, actions.
hevy-03.jpg Hevy - Workout Tracker Gym Log Hevy Studios S.L. 4.92 / 87,639 Charts that stay legible at a glance. Konjo's analytics screens should look like this.
runna-01.jpg Runna: Running Plans & Coach Strava Inc. 4.85 / 33,185 Plan overview: dense structured data that still scans. Sport-tech numerals.
apple-fitness-01.jpg Apple Fitness Apple Inc. 2.87 / 11,338 One hero, then a little. Tonal cards, no shadows, icons as the only colour.
ladder-01.jpg LADDER Strength Training Plans Ladder Technologies, Inc. 4.95 / 183,372 Heavy condensed caps at full volume — the register Konjo's display type sits in.

Craft and restraint

Where 'obviously easy to use' comes from. Type doing the work of boxes.

File App Publisher Rating What we take from it
things-3-01.jpg Things 3 Cultured Code GmbH & Co. KG 4.82 / 27,826 Two type sizes on the whole screen. Grouping by ~12pt of extra space, not dividers.
things-3-02.jpg Things 3 Cultured Code GmbH & Co. KG 4.82 / 27,826 Dense but calm: compact rows carrying two lines of text. Section header plus a hairline.
apple-health-01.jpg Apple Health Apple Inc. 3.02 / 8,866 Tonal cards on a tinted page with NO shadow — the reference for our separation law.
apple-health-02.jpg Apple Health Apple Inc. 3.02 / 8,866 Inset hairlines and a 44pt icon gutter in a grouped list.
flighty-01.jpg Flighty – Live Flight Tracker Flighty LLC 4.85 / 147,692 Premium without ornament. Dark, dense, quiet.
timepage-03.jpg Timepage: Calendar Planner Bonobo Pte Ltd 4.62 / 15,312 Colour-blocked day view — how far editorial treatment can go before it stops being an app.
structured-02.jpg Structured: Daily Planner Todo unorderly GmbH 4.79 / 164,446 A timeline that reads instantly. Icon column, time, title.
arc-search-01.jpg Arc Search — Find it, Faster The Browser Company of New York Inc. 4.88 / 24,790 Two-word display type carrying an entire screen.

Operational software people love

For Studio and the Teach tab: dense data kept calm.

File App Publisher Rating What we take from it
linear-01.jpg Linear Mobile Linear Orbit, Inc. 4.83 / 2,001 The only colour on the whole screen is a 16px icon per row; text stays monochrome. Take that discipline, not its label casing — Linear sets section labels in sentence case, Konjo sets them in eyebrow caps, and that is a deliberate divergence from the founder's heavy-condensed-caps answer, not an oversight.
linear-02.jpg Linear Mobile Linear Orbit, Inc. 4.83 / 2,001 Zero divider lines in a dense inbox. Unread = weight + a dot, not a background.
attio-04.jpg Attio Attio Limited 3.57 / 28 A dense-list reference — not a Studio table target. It is a phone screenshot, and it carries vertical rules, which studio/tables.md forbids. Read it for row rhythm and column restraint only; Studio has no rendered table target yet: field-type icons in column headers, tight rows, 1px rules.
attio-01.jpg Attio Attio Limited 3.57 / 28 Kanban cards where every row is one field prefixed by a monochrome type icon.
superhuman-03.jpg Superhuman Mail SUPERHUMAN LABS INC. 4.61 / 3,582 Dimming background content with a flat colour wash instead of a scrim plus shadow.
stripe-dashboard-02.jpg Stripe Dashboard Stripe, LLC 4.70 / 68,520 Money shown calmly: status as coloured text rather than a badge, and a primary paired with a bordered secondary rather than stretched full-width.
notion-01.jpg Notion: Notes, Tasks, AI Notion Labs, Incorporated 4.78 / 89,839 An empty state that teaches rather than apologises.
monarch-02.jpg Monarch: Budget & Track Money Monarch Money, Inc. 4.89 / 105,805 Editorial serif headlines over sans body — the direction Konjo considered and rejected.

Community, events, motivation

For Social, Events, and the progress mechanics.

File App Publisher Rating What we take from it
partiful-01.jpg Partiful: Party Invite Maker Partiful Co. 4.95 / 233,445 Highest-rated app in the study (4.95 / 233k). User-authored titles left alone; date is the loudest metadata.
partiful-05.jpg Partiful: Party Invite Maker Partiful Co. 4.95 / 233,445 Social proof as overlapped avatars plus a plain count. Event row anatomy.
luma-02.jpg Luma: Events & Invites Luma Labs, Inc. 4.94 / 17,040 Event discovery that stays light. Category chips, clear time, no chrome.
duolingo-02.jpg Duolingo: Language Lessons Duolingo, Inc 4.72 / 5,393,166 The streak-and-badge mechanic Konjo adopts — and the tone it must not.
letterboxd-02.jpg Letterboxd Letterboxd Ltd 4.82 / 88,269 A profile built from what someone has done, not from a form they filled in.
bereal-01.jpg BeReal: Photos & Friends Daily BeReal 4.77 / 1,154,144 How a feed stays a feed and does not become a dashboard.

Anti-patterns — the category we beat

Konjo's actual competitors. Study the mechanism, never the look.

File App Publisher Rating What we take from it
mindbody-03.jpg Mindbody: Fitness & Wellness MINDBODY Inc. 4.90 / 269,378 INVERTED ROW ANATOMY: the timestamp is larger and above the class name. The eye lands on the wrong thing.
mindbody-05.jpg Mindbody: Fitness & Wellness MINDBODY Inc. 4.90 / 269,378 Four stacked metadata treatments per row; the primary action is the lowest-contrast element in it.
mindbody-06.jpg Mindbody: Fitness & Wellness MINDBODY Inc. 4.90 / 269,378 Selected state signalled only by a 3px underline in the same colour, weight, and size as unselected.
zen-planner-01.jpg Zen Planner Member App Daxko LLC 4.58 / 7,373 Gradient nav bar; three button styles in one row; two of four lines bold so they compete; an unexplained gold accent bar.
zen-planner-02.jpg Zen Planner Member App Daxko LLC 4.58 / 7,373 A centred title on a screen whose neighbour is entirely left-aligned.
gymdesk-01.jpg Gymdesk - Members App Martial Arts on Rails LLC 3.69 / 45 Teal-gradient cards and a chart nobody asked for, in place of an answer to 'what do I do now'.
spark-member-01.jpg Spark Member SPARK MEMBERSHIP LLC 3.69 / 352 Stock photography and clip art doing the job design should do.
mystudio-01.jpg MyStudio App MyStudio Academy LLC 4.83 / 7,591 Gradients, three competing accent colours, and no discernible hierarchy.

Konjo target mockups

Not references — these are the target, built from Konjo's own tokens during the calibration. Open them before implementing the pattern they show.

File Pattern Spec
konjo/tab-home-hero-light.jpg Tab home, hero-led — full-bleed hero, quiet rows on the tinted page, one white tile patterns/tab-home.md
konjo/tab-home-hero-dark.jpg The same screen in dark. surface.hero inverts — the loud block is near-white here, because brand.ink on the dark page is 1.021:1 and would vanish foundations/colour.md
konjo/tab-home-index-light.jpg Tab home, index-led — search first, one personal card, then the index. Zero loud blocks, zero red, zero filled primaries, all legal patterns/tab-home.md
konjo/tab-home-index-dark.jpg The same, dark. Card #1C1C22 on page #0E0E10 = 1.137:1 foundations/colour.md
konjo/tile-grid-target.jpg Attendance tile grid with corner status glyphs patterns/tab-home.md
konjo/tile-grid-legend.jpg The six statuses, tiered Skill, references/tokens.md
konjo/promotion-certificate-target.jpg The promotion moment patterns/celebration.md

Konjo's own screens

Real shipped screenshots live at apps/site/public/img/screens/, captured by scripts/site/capture-screens.mjs. Look at those before redesigning anything: most of the anti-patterns in the skill's reference list are visible in stale captures — re-run the capture script before citing any of them as current evidence.

form-target-{light,dark}.jpg — added 2026-08

The form reference the set was missing. Thirty-three screens and not one form, while the skill's self-review step ends with "compare yours to the closest one" — for the most common screen type after the index and the detail, there was no closest one, and a blind test found that instruction was a dead end.

Unlike the other targets these are generated, not drawn: node scripts/design/render-form-target.mjs renders them from packages/design-tokens/tokens.ts, so the target cannot drift from the palette. Regenerate after any token change.

What it shows: the tinted page with white inputs; the eyebrow-per-section grouping; the label row with Optional marked (never Required); the select trigger in both its empty and populated forms; a field in its error state; the repeating note group with a checkbox per line, unchecked by default; the summary line naming the person; the consequence line above the primary; and one filled primary with nothing else competing. Red appears once, as the error, and the belt swatches carry their ring.

The copy is load-bearing and is not invented. The consequence line and the note-sharing model are quoted from product-facts.md. Do not paraphrase either from this image — read the source. An earlier version of this target carried a single free-text notes field, the helper "The student can read this", a consequence line that omitted the head instructor and correctability, and the placeholder "Choose the sensei" — which hardcodes one lineage's honorific into a screen every dojo sees. All four were wrong, and all four were persuasive precisely because they were rendered.

promotion-certificate-target.jpg — known deviations, do not copy them

This target was drawn before several rules existed, and a blind test found three places where copying it faithfully produces a defective screen. It is kept because its composition is right — the certificate as the one loud moment, the rank as the subject, the sensei named — but these three are wrong and the rules win:

In the image The rule Which is right
"See what's next" is a full-width pill patterns/buttons.md: "A full-width primary uses radius.input 8, not radius.pill — a full-width pill reads as a toy" the rule
The button and the link below it are centred, over empty page SKILL.md, what never ships: "A centred button floating in a void" the rule
The date reads "8 November 2026" foundations/content-format.md: a promotion date is absolute and formatted Nov 8, 2026 the rule

A reference image is evidence about layout, not authority over the laws. Where an artefact and a chapter disagree, the chapter wins and the artefact gets a row in this table until it is redrawn.

studio-table-target.jpg — added 2026-08

The Studio reference the set was missing. Nine Konjo targets and every one was a phone, while the skill's self-review step says "compare yours to the closest one" — so for a Studio screen the closest thing on disk was a competitor's phone screenshot carrying vertical rules, which studio/tables.md bans.

Generated, like the form target: node scripts/design/render-studio-target.mjs --spec renders it from packages/design-tokens/tokens.ts and studio/metrics.md, so it cannot drift from the palette. Regenerate after any token change.

What it shows: the 236px ink rail; the page frame at spacing.s32; a panel on the tinted page; the toolbar with a search field, wrapping filter chips and the count; a 36pt header row in eyebrow with the sorted caret; 46pt rows with the subject in rowTitle and everything else in body; the belt swatch at swatchSize.roster with its border.control ring; and status as pills rather than chips. No vertical rules, no zebra, no shadow.

It has a second job. --live renders the same markup against the real apps/studio/globals.css, with the Tailwind at-rules stripped. Diffing that before and after a stylesheet change is the only visual verification of Studio available without a running server, and it is what the 171-declaration ramp migration was checked against.