UI wireframes and annotated screen designs
Screen layouts with numbered notes, plus journeys, CLI sessions and chatbot flows.
What it explains and when it is useful
A wireframe is a simple drawing of a screen's layout before it is built. Annotations explain what each part does, which success criterion it serves and how it behaves in different states.
When to use it: Any solution with a graphical interface (web, mobile, desktop, game screens). For text interfaces, use example sessions; for chatbots, a conversation flow (both below).
Worked example
Illustrative: PracticePal is a fictional project used throughout this guide.
Scroll sideways to see the whole diagram.
| # | Element | Behaviour | SC |
|---|---|---|---|
| 1 | Week selector | Current and next week only; arrows disabled beyond that | SC2 |
| 2 | Room tabs | ♪ marks rooms that allow loud instruments | SC2, SC6 |
| 3 | Grid | Free / booked / your booking / blocked, never names of other students | SC2 |
| 4 | Selected slot | One tap selects; the panel fills in | SC3 |
| 5 | Weekly counter | Updates after each booking; “3 of 3” disables Confirm | SC5 |
| 6 | Error message area | Shows the reason from make_booking | SC4–SC6 |
| 7 | Join waiting list | Only when the slot is taken | SC7 |
Scroll sideways to see the whole diagram.
| # | Element | Behaviour | SC |
|---|---|---|---|
| 1 | Offer banner | Countdown from 15:00; disappears when accepted or expired | SC7 |
| 2 | Check in | Active from 5 min before to 10 min after the start | SC8 |
| 3 | Booking card | Room, day, time and a status line | SC2 |
| 4 | Bottom menu | Same four places on every screen | SC3 |
User journey diagram
Scroll sideways to see the whole diagram.
Command-line interaction example
Alternative scenario. A text-based version of PracticePal for a terminal.
$ python practicepal.py PracticePal · logged in as u381 (Maya L.) > book P5 2026-11-03 12:30 --loud Not booked: noise clash with P6 (loud booking 12:30–13:00). > book P5 2026-11-03 13:00 Booked P5, Tue 3 Nov 13:00–13:30. You have 3 of 3 bookings this week. > book P1 2026-11-05 16:00 Not booked: weekly limit (3) reached. > book P9 tomorrow Unknown room 'P9'. Rooms: P1 P2 P3 P4 P5 P6. Usage: book ROOM YYYY-MM-DD HH:MM [--loud]
Conversation flow for a chatbot
Alternative scenario. A chatbot that books rooms.
Scroll sideways to see the whole diagram.
Notation and legend
| Symbol or part | Meaning |
|---|---|
| Rectangles | Areas of the screen (no real colours or images needed) |
| Shading | State: booked, yours, selected |
| Dashed box | Space for something that appears only sometimes (errors) |
| Numbered circles | Annotations explained in the table |
Design decisions it communicates
A diagram earns marks when you explain the decisions it shows. In PracticePal's documentation these would each be one sentence:
- The booking panel is on the same screen as the grid to keep booking to three taps (SC3).
- Other students' names are never shown, only “Booked” (privacy).
- Errors appear in a fixed area so the user always knows where to look.
Common mistakes
- Only input screens: the exemplars were told to model outputs too.
- No annotations, so behaviour is unclear.
- Screenshots of the finished product presented as design (design comes first).
- Every screen drawn; pick the important ones.
Checklist for your own version
Ticks are saved in this browser only, so you can use the list while you draft.