Release review · 9 checks · use with your project

Before you ship your frontend

An interface that works beyond the demo.

For reviewing an interface, including one generated with AI. Nine checks on a real user flow: record what you tested, what blocks release and what you accept shipping.

Your answers stay on this page. They are neither sent nor automatically saved. Download your work before closing or reloading the page.

0 / 9 answers filled in

Record the URL, version, browser and steps from the starting point to the expected outcome. Use test data.

Fictional example: a booking form

Staging, version abc123, Edge on Windows. Select a slot → enter test contact details → confirm → find the booking.

Perform the final action. Also check back navigation, reload and opening the URL directly. Record expected / actual / reproduction steps.

Fictional example: a booking form

After reload, the summary still shows the booking details. Going back keeps the selected slot.

Simulate a slow network, a failed request and an empty result. Check the message, retained inputs and retry option.

Fictional example: a booking form

Network disconnected during confirmation: inputs remain and a button allows retrying. No false success message.

Test at 320 px, on your phone with its keyboard open and at 200% browser zoom. Look for clipped content, hidden actions and obstructive horizontal scrolling.

Fictional example: a booking form

At 320 px, the date wraps across lines. With the keyboard open, I can reach the error message and button.

Use Tab, Shift + Tab, Enter and Escape as appropriate for each control. Follow visible focus. Check order, dialog closing and focus return.

Fictional example: a booking form

I select a slot without a mouse. Escape closes the dialog and returns focus to the button that opened it.

Check associated field labels, errors that explain how to fix the problem, alternatives for meaningful images and contrast. Colour alone should not convey information.

Fictional example: a booking form

“Invalid email address: use name@example.com” is associated with the field. It is not just outlined in red.

Using test accounts, check that the server controls data access. Look for exposed frontend secrets and unnecessary personal data in logs. Check what a double click does.

Fictional example: a booking form

One test account cannot read another’s booking. A double click does not create two bookings. No private token in shipped code.

Review console and network requests, run relevant tests and an accessibility tool. Record errors, oversized images and testing limits. An automated score is not enough.

Fictional example: a booking form

Form tests pass. A 3 MB image slows mobile loading: compress it. Keyboard navigation checked; screen reader not tested yet.

Choose: ship / fix and retest / ask for review. Rank defects by impact. For each blocker: step, expected result, actual result and fix to verify.

Fictional example: a booking form

Fix and retest: on mobile, the keyboard hides the button. Repeat the full flow after the fix. Image compression is also planned before release.

Before using your result

Your next step

First fix anything that prevents completing the flow or exposes data. Repeat the steps after fixing it, then keep this review with the released version.