In a time where AI writes most of our boilerplate, manually wiring a fetch with , error, and pagination states is exactly the kind of thing that slips through the cracks — and exactly what keeps coming up in job interviews.
A plain fetch with pagination and manual and error handling. No libraries, no abstractions — just useState
, useEffect
, and a mock API that delays, paginates, and randomly fails. The kind of challenge that keeps your fundamentals sharp.
👉 [https://www.reactchallenges.com/challenges/simple-pagination](https://www.reactchallenges.com/challenges/simple-pagination)
`https://example/users?page={page}`
and display them in a table (ID, Name, Last name). The API returns up to 10 users per page.`Page {page} of {totalPages} ({count} users)`
.If you've been leaning on AI for the boilerplate lately, this one will remind you how much muscle memory matters. Simple fetch, clean state, solid edge cases — exactly what separates a working prototype from interview-ready code.