The In-Between States

Async React patterns with Next.js 16

useActionState for Forms
October 29, 2025 · 2 min read

Form state preservation with useActionState, defaultValue pattern, create/edit reuse.

useFormStatus
October 27, 2025 · 2 min read

SubmitButton pattern, child component constraint, localized form feedback.

useOptimistic for Instant Feedback
October 25, 2025 · 2 min read

Instant feedback with useOptimistic, derived pending state, data-pending for parent styling.

View Transitions API
October 21, 2025 · 2 min read

Page-level transitions, shared element morphing, directional navigation.

generateStaticParams
October 17, 2025 · 2 min read

Pre-render dynamic routes, generateMetadata for SEO, on-demand generation.

URL State with searchParams
October 15, 2025 · 2 min read

searchParams for shareable state, Zod validation, optimistic URL updates.

cache() for Deduplication
October 13, 2025 · 2 min read

Request deduplication with cache(), combining with "use cache" directive.

useTransition for Pending UI
October 11, 2025 · 2 min read

isPending for destructive actions, comparison with useOptimistic, keeping content visible.

Skeleton Co-location Pattern
October 9, 2025 · 2 min read

Co-locate skeletons with components, match layout structure, prevent CLS.

Static vs Dynamic Rendering
October 5, 2025 · 2 min read

cacheComponents default, what triggers dynamic rendering, push dynamic access deep.

The Action Prop Pattern
October 3, 2025 · 2 min read

Action props for reusable components, encapsulate transitions and optimistic state.

useLinkStatus for Navigation
October 1, 2025 · 2 min read

Link pending state with useLinkStatus, child component pattern, comparison with useTransition.