Dessys

The framework

A philosophy, not a codebase. The behaviour is the spec; any stack can implement it.

North starLaw 1: No surprisesLaw 2: OptimismLaw 3: Reveal the whole, work in small piecesLaw 4: Saving is shown, not announcedLaw 5: Nothing is ever lostLaw 6: ControlLaw 7: Form signals functionLaw 8: Summonable structureAcross components (first pass)Reference component: the formContext, not instructionGrouping and density (direction set)Typography and rhythm

North star

MCP id: north-star

Law 1: No surprises

Nothing happens that the user didn't cause.

MCP id: law-1-no-surprises

Law 2: Optimism

Assume success, trust the user, guide instead of block.

MCP id: law-2-optimism

Law 3: Reveal the whole, work in small pieces

The full map is always visible. You walk it one short stretch at a time.

MCP id: law-3-reveal-the-whole-work-in-small-pieces

Law 4: Saving is shown, not announced

The interface itself proves the work is safe.

MCP id: law-4-saving-is-shown-not-announced

Law 5: Nothing is ever lost

A total, invisible safety net. Carelessness is free.

MCP id: law-5-nothing-is-ever-lost

Law 6: Control

The user is never trapped by the interface, least of all on mobile.

MCP id: law-6-control

Law 7: Form signals function

Appearance is a vocabulary. You read what something does before reading a word.

MCP id: law-7-form-signals-function

Law 8: Summonable structure

Don't bake in structure the user can summon.

MCP id: law-8-summonable-structure

Across components (first pass)

LawFormButtonList itemMenu
1 No surprisesLayout never shifts on errorsNever moves or resizes as you reach for itDoesn't jump as items loadOrder never changes by itself
2 OptimismSubmit always enabled; errors guideActs instantly, reconciles laterDelete instantly, offer undoNo confirmation for reversible choices
3 Small piecesAll steps visible, about five fields eachLabel says exactly what happensCount and groups visibleGroups visible; no blind scrolling
4 Saving shownDraft appears in a list or countA toggle's state is its confirmationNew item appears in placeChecked state updates immediately
5 Nothing lostInput survives errors, reloads, crashesEvery action reversibleDeleted items recoverableAn accidental choice can be undone
6 ControlSticky submit, dismissible keyboardLarge target, never coveredUser decides order and selectionCloses on outside tap or Escape
7 Form signals functionOne primary action per stepStyle matches the weight of the actionSame kind of item, same layoutDestructive items look destructive
8 SummonableRare fields on demandSecondary actions off the surfaceSort, filter, highlight on demandSearch inside long menus

MCP id: across-components

Reference component: the form

Submitting

Validating

Large forms

Mobile

MCP id: reference-component-the-form

Context, not instruction

Intuition governs how to operate; explanation is only for where you are and what's happening.

Fields that need context

MCP id: context-not-instruction

Grouping and density (direction set)

Padding is the lazy default. It separates things but doesn't group them.

What Excel gets right

MCP id: grouping-and-density

Typography and rhythm

Roles, not sizes

Two linked ratios

Legibility first

MCP id: typography-and-rhythm