Analytical dashboard on live data from external API

Job 2 of 4
A dashboard that works with live data from an external API, rather than a pre-prepared dataset.

Search, filters, pagination, charts, and comparison. Requests are cached to avoid hitting API limits, and when quickly switching filters, the previous request is canceled—otherwise, the old response overwrites the current one.

States that are usually forgotten are handled separately: empty result, network error, exceeding request limits.

Stack: Next.js, TypeScript, Recharts, TailwindCSS.