Loading States & Skeletons Checklist
Every async action must show a loading state. No button fires twice. No page renders blank. No action happens silently. Loading is not optional.
Back to Frontend Checklist
0/0 completed
Actual UI Examples
Button Loading States
The width stays stable and the button is disabled while the request is active.
Page Skeleton
Table Loading
| Project | Status | Owner |
|---|---|---|
Inline and Component Loading
Searching...
JS
Avatar placeholder shown until image loads.
Upload progress: 58%
Loading Button Labels
| Action | Default Label | Loading Label |
|---|---|---|
| Create | Create Project | Creating... |
| Save | Save Changes | Saving... |
| Delete | Delete | Deleting... |
| Send | Send Invite | Sending... |
| Upload | Upload | Uploading... |
2. Page & Section Loading
3. Skeleton Screens
4. Table Loading
5. Inline & Component Loading
6. What Never Needs a Loading State
- Client-side navigation that is instantaneous
- Show/hide and expand/collapse toggles
- Client-side form validation
- Hover or focus state changes
- Animations and transitions
- Reading from in-memory state without an API call