← All 29 screens

Design system portfolio

The critique round

The round that asked whether the pages are any good to use, rather than whether they are correct. Each page reviewed by somebody who had not built it.

Every page passes 202 gate checks. That is the floor. This round asks the question no linter asks: is it any good to use, and would a designer look at it and want to build in that system?

the build contract still binds. Nothing here licenses breaking it — least of all §1, the token rule. What follows is what to do once the page is already correct.

The bar

A visitor opens this portfolio and scrolls twenty screens. The ones they remember are the ones where somebody clearly knew the domain and knew the system, and spent the boldness in one place instead of decorating everywhere. The ones they forget are correct, complete, and anonymous.

Your page is currently somewhere on that line. Your job is to find out where, honestly, and move it.

The failure mode of this round is homogenisation. Twenty pages critiqued against one rubric will drift toward one house style unless every reviewer resists it. Your page should end up more itself, not more like its neighbours. If a change you are considering would also improve four other pages in the portfolio, it is probably a generic improvement and probably not the one worth making. Run direction_check.py --compare against your two nearest neighbours before and after; the number must not go up.

1. Do the task, first, with no notes

Open the page. Be the user in the brief — the ward nurse at 07:00, the purchasing manager clearing a queue, the householder whose well may be contaminated. Complete the task the screen exists for. Only then start writing.

Everything you find after doing this is better than anything you would have found reading source.

2. Score it, honestly

references/interface-critique.md is the rubric. Read it. Then:

Put the scores in your report. A review that reports only fixes hides how much of the page you actually looked at.

3. The render pass — this is where the findings are

assets/review/<slug>-{phone,laptop,wide}-{light,dark}.png holds six full-page renders of your page: 390px, 1440px and 1920px, in both schemes. Regenerate with node tools/review-shots.mjs <slug>.

Look at all six. Everything below the first fold on these pages has so far only ever been read as source — the plate in the ledger is the top 900px, and every gate so far has measured rather than looked. Specific things that hide down there:

4. The states nobody has looked at

The gates check the page at rest. Drive it:

5. What "great" looks like, by archetype

Not a checklist — a standard to measure your own page against.

6. Fix, then prove it

7. Report

  1. The cognitive-load count and the ten heuristic scores, with the moment behind each below 3.
  2. Findings, severity-sorted, each with the fix you made.
  3. What you deliberately left, with severity and reason.
  4. What was already working — specifically. The good decisions are the ones most likely to be destroyed by the next pass.
  5. direction_check.py --compare against your two nearest neighbours, before and after, to show the page did not drift toward them.
  6. Final gate output.