
Frontend · 7 min · 2026-08-26
App Router Boundaries That Stay Maintainable
Server components, data fetching, and where client interactivity should stop.
App Router pain usually comes from fuzzy boundaries.
Fetch on the server by default. Push client components to the leaves. Keep shared types thin and colocated with routes that own them.
Prefer boring folder conventions over clever abstractions until the third reuse.