# Build the missing empty, loading, and error states for one screen

A screen designed only for the case where everything works, given the states users meet first.

Category: Design system and UI
Source: https://letsship.ai/use-cases/build-empty-loading-and-error-states
Published: 2026-08-25

## Goal

Build the empty, loading, and error states for one screen.

## Acceptance criteria

- Each state is implemented and reachable
- A screenshot of each is attached
- The empty state says what to do next rather than only that there is nothing
- Errors explain what went wrong and offer a way forward

## What lands as proof

A screenshot per state, which is also the first time anybody has seen them rendered.

## Prompt

Copy this to an agent to open the ticket:

```text
Create a Linear issue in my team and assign it to the SHIP agent.

Title: Add the missing states to {screen}

Description: Build the empty, loading, and error states for one screen.

Acceptance criteria:
- Each state is implemented and reachable
- A screenshot of each is attached
- The empty state says what to do next rather than only that there is nothing
- Errors explain what went wrong and offer a way forward

Before you create the issue, find a screen in this repository that renders nothing useful when its data is empty, and replace {screen} with it.
```

## Questions

### What does the agent actually change?

The ticket is scoped to one outcome: build the empty, loading, and error states for one screen. Work that serves that outcome is in scope, and anything outside it is left for a separate ticket, so the pull request stays reviewable.

### How do I know the work is done?

The pull request carries the evidence, not only the diff. Here that means a screenshot of each state attached to the pull request, so a reviewer can confirm the result without reproducing the work locally.

### How much oversight does this need?

None is required before the run starts. Every claim this ticket makes can be checked by machine, so the agent works straight through and a person reviews the finished pull request like any other.
