Five curriculum steps on product and interface design — phone apps, dense software, websites past the homepage, and multi-step flows. Everything below is a practice piece, not a deliverable: internal drills, graded against written theory before you ever saw them. They're here because a screenshot lets me choose the crop.
The phone half of your ERP: a warehouse clerk counting a shipment into stock. Six screens, built at true iPhone widths — the ones normally skipped are here too: nothing-to-do, no signal, and a rejected sync.
Signature detail: the shipment opens as a perforated waybill stub. Every icon is drawn rather than typed — that one habit is the loudest cheap tell in mobile work.
One real screen of your ERP with every state drawn — not just the happy path. Loading, first run, no matches, load failure, no access, stale data, multi-select, the delete confirm and an undo toast. Use the black bar at the bottom to switch between them.
The discipline test: zero components were invented in the page. Four things were missing, so they went into the design system first and were written into its documentation — including a real bug where anything marked hidden still rendered.
A four-page site for an invented product. The test for this step: crop the nav off an inner page — can you still tell it's the same product? Pricing, billing settings and a 404, which is where most design turns back into a template.
The showy parts — the glow, the bezel around the screenshot — appear only on the homepage. The vocabulary carries inward; the theatrics don't. Worth opening on your phone: it was broken there on my first pass.
A new shop opening the ERP for the first time. The rule for this step is that the state machine gets written before any pixels, and that file is where the real decisions happened: don't ask for anything you can derive, never let a number someone has to look up block them, and end with a working shop rather than a waiting room.
Twelve states, including the ones nobody draws — expired invite, coming back a day later, blocked waiting on you to approve a seat, verification rejected, and finished-but-degraded.