Server-side Pagination

Rendering
Server Component — the page search param is forwarded to the internal /api/posts/paginated route, which does the slicing.
Hooks
The Pagination wrapper is a Client Component pairing useOptimistic (flips the highlighted page instantly) with useTransition (marks the router.push as non-blocking).
Caching
None — Next 15 defaults fetch to no-store (unlike Next 13/14's force-cache default), so every navigation is a genuinely fresh request.
Why it helps
The old page stays interactive and the UI feels immediate, even though the new page's data is still streaming in over the network.
View on GitHub

Server-side Pagination

Consequatur et quisquam minus delectus tenetur.

Consequatur et quisquam minus delectus tenetur.

Minus eum dolor enim. Dignissimos sit aperiam rerum laborum ut voluptatem.

Nesciunt eligendi qui delectus quia blanditiis.

Nesciunt eligendi qui delectus quia blanditiis.

Et iste omnis est explicabo eos. Sunt blanditiis quam ad libero est asperiores et.

Quae praesentium consequatur vel eligendi iste nisi.

Quae praesentium consequatur vel eligendi iste nisi.

Consectetur inventore distinctio aperiam suscipit dolorum. Maxime neque praesentium quasi et qui.

Sunt et rerum aspernatur praesentium.

Sunt et rerum aspernatur praesentium.

Eos laboriosam est itaque enim ratione. Quasi inventore quisquam sed harum sit non.

Quo minima quia veritatis sed aut sed fugiat.

Quo minima quia veritatis sed aut sed fugiat.

Rerum sed minima culpa ab minima rem nobis provident. Assumenda aspernatur perferendis dolorum officia.

Odit deserunt temporibus impedit dolore.

Odit deserunt temporibus impedit dolore.

Alias voluptatem inventore molestiae pariatur amet et. Repellat saepe suscipit expedita dolor rem porro at culpa.

Qui excepturi autem repellendus.

Qui excepturi autem repellendus.

Distinctio et maiores occaecati iure molestiae molestiae ut. Neque suscipit quasi nisi qui quo eius et.

Beatae esse et corporis voluptas tempora.

Beatae esse et corporis voluptas tempora.

Atque illo enim eos nulla quasi ducimus expedita. Numquam labore et explicabo qui et.

Quod optio quia nam est quod alias.

Quod optio quia nam est quod alias.

In ut ut perferendis et. Sit qui libero ut aut.