Blog

Next.js catchError
error.js catches errors for an entire route segment — but not every error boundary you need actually lines up with a route segment boundary. Someti
Dive Deeper
Configuring CI build caching
If you've ever watched a Next.js build run in CI and wondered why it takes three minutes on your laptop but twelve minutes on GitHub Actions, the ans
Dive Deeper
Client-side data fetching with SWR
Not everything in a Next.js App Router project belongs on the server. A product search box that fires a new request on every keystroke, a notificatio
Dive Deeper
Client-side data fetching with TanStack Query
TanStack Query (the library most people still call React Query out of habit) solves a problem that Server Components don't: what happens to data _aft
Dive Deeper
Client-side data fetching
Every Next.js App Router project eventually hits the same fork in the road: some piece of UI needs data that the server rendered version can't (or sh
Dive Deeper
Next.js Codemods
A codemod is a programmatic transformation applied across your codebase — the entire point being that when Next.js renames or restructures an API, yo
Dive Deeper