Recommended preparation
Premium
Image Upload & Preview Component
Try the prompt first
Mid-level15 min first pass
Design an image upload flow with local validation, object-URL previews, optional preprocessing, real transfer progress, cancellation, retry, and accessible errors.
Constraints
- Keep client, server, and rendering ownership explicit.
- Cover loading, failure, recovery, and accessible interaction states.
Challenge summary
Design an image selection, preview, and upload pipeline with decoded validation, real transfer progress, cancellation, retry, and bounded local resources.
What you'll practice
- Separate a local preview from a server-confirmed durable asset.
- Model validation, preprocessing, session creation, transfer, and finalization as one attempt.
- Ignore stale callbacks during replace, cancel, retry, and lost-response races.
- Build accessible progress and recovery without inventing percentages or blocking the main thread.
What Premium unlocks
Premium unlocks the replacement-race example, upload-session contracts, object-URL lifecycle, and finalization recovery.
Free related practice
Upgrade to FrontendAtlas Premium to access this system design scenario. Already upgraded? Sign in to continue.