41554 blogs · [ { "id": "01a0e439-4a3d-71e9-a428-fc269cba7712", "title": "Rebuilding React Router's Global Hooks in Next.js", "url": "https://aurorascharff.no/posts/rebuilding-react-routers-global-hooks-in-nextjs/", "published_at": "2026-09-09T10:00:00+00:00" }, { "id": "01a08732-31b5-73d9-83ef-e4a520e10dc0", "title": "Avoiding Server Component Waterfall Fetching with React 19 cache()", "url": "https://aurorascharff.no/posts/avoiding-server-component-waterfall-fetching-with-react-19-cache/", "published_at": "2026-08-25T09:35:00+00:00" }, { "id": "01a08732-31b5-73d9-83ef-e4a521493a9c", "title": "Coordinating Optimistic Updates in Next.js", "url": "https://aurorascharff.no/posts/coordinating-optimistic-updates-in-nextjs/", "published_at": "2026-08-13T10:00:00+00:00" }, { "id": "01a08732-31b5-73d9-83ef-e4a521cdc071", "title": "Experimenting with RSCs for Performance and UX in Next.js", "url": "https://aurorascharff.no/posts/experimenting-with-rsc-for-performance-and-ux-in-nextjs/", "published_at": "2026-07-24T10:00:00+00:00" }, { "id": "01a08732-31b5-73d9-83ef-e4a522a19b55", "title": "Building an Active NavLink Component in Next.js", "url": "https://aurorascharff.no/posts/building-an-active-navlink-component-in-nextjs/", "published_at": "2026-05-23T10:00:00+00:00" }, { "id": "01a08732-31b5-73d9-83ef-e4a5236ff42c", "title": "Component Architecture for React Server Components", "url": "https://aurorascharff.no/posts/component-architecture-for-react-server-components/", "published_at": "2026-05-22T12:00:00+00:00" }, { "id": "01a08732-31b5-73d9-83ef-e4a524270075", "title": "The Precompute Pattern: Encoding Dynamic Data into URLs in Next.js", "url": "https://aurorascharff.no/posts/the-precompute-pattern-encoding-dynamic-data-into-urls-in-nextjs/", "published_at": "2026-04-01T10:00:00+00:00" }, { "id": "01a08732-31b5-73d9-83ef-e4a52430e09c", "title": "Implementing Next.js 16 'use cache' with next-intl Internationalization", "url": "https://aurorascharff.no/posts/implementing-nextjs-16-use-cache-with-next-intl-internationalization/", "published_at": "2026-03-24T00:00:00+00:00" }, { "id": "01a08732-31b5-73d9-83ef-e4a5248a2359", "title": "Error Handling in Next.js with catchError", "url": "https://aurorascharff.no/posts/error-handling-in-nextjs-with-catch-error/", "published_at": "2026-03-23T15:00:00+00:00" }, { "id": "01a08732-31b5-73d9-83ef-e4a524d0b146", "title": "Building Design Components with Action Props using Async React", "url": "https://aurorascharff.no/posts/building-design-components-with-action-props-using-async-react/", "published_at": "2026-02-23T17:00:00+00:00" }, { "id": "01a08732-31b5-73d9-83ef-e4a5257f2999", "title": "Dynamically Generating PWA App Icons in Next.js 16 with Serwist", "url": "https://aurorascharff.no/posts/dynamically-generating-pwa-app-icons-nextjs-16-serwist/", "published_at": "2025-11-11T08:00:00+00:00" }, { "id": "01a08732-31b5-73d9-83ef-e4a52634d031", "title": "Building an Async Combobox with useSuspenseQuery() and useDeferredValue()", "url": "https://aurorascharff.no/posts/building-an-async-combobox-with-usesuspensequery-and-usedeferredvalue/", "published_at": "2025-08-07T21:22:00+00:00" }, { "id": "01a08732-31b5-73d9-83ef-e4a5268b6623", "title": "Server and Client Component Composition in Practice", "url": "https://aurorascharff.no/posts/server-client-component-composition-in-practice/", "published_at": "2025-08-05T10:22:00+00:00" }, { "id": "01a08732-31b5-73d9-83ef-e4a526977729", "title": "Building Reusable Components with React 19 Actions", "url": "https://aurorascharff.no/posts/building-reusable-components-with-react19-actions/", "published_at": "2025-04-04T10:22:00+00:00" }, { "id": "01a08732-31b5-73d9-83ef-e4a52790c473", "title": "Managing Advanced Search Param Filtering in the Next.js App Router", "url": "https://aurorascharff.no/posts/managing-advanced-search-param-filtering-next-app-router/", "published_at": "2024-10-24T10:30:00+00:00" }, { "id": "01a08732-31b5-73d9-83ef-e4a527c61869", "title": "Handling Form Validation Errors and Resets with useActionState()", "url": "https://aurorascharff.no/posts/handling-form-validation-errors-and-resets-with-useactionstate/", "published_at": "2024-10-04T10:30:00+00:00" }, { "id": "01a08732-31b6-7345-80b1-d5e428275c81", "title": "Implementing Feature Flagging with the Next.js App Router", "url": "https://aurorascharff.no/posts/implementing-feature-flagging-with-nextjs-app-router/", "published_at": "2024-09-17T09:30:00+00:00" }, { "id": "01a08732-31b6-7345-80b1-d5e42860e692", "title": "Creating a Reusable SubmitButton with useFormStatus()", "url": "https://aurorascharff.no/posts/creating-a-reusable-submitbutton-with-useformstatus/", "published_at": "2024-06-10T11:30:00+00:00" }, { "id": "01a08732-31b6-7345-80b1-d5e428a452d0", "title": "Rebuilding \"Remix Contacts\" in Next.js 14 with Transitions, Server Actions and Prisma", "url": "https://aurorascharff.no/posts/rebuilding-remix-contacts-in-nextjs-14-with-transitions-server-actions-and-prisma/", "published_at": "2024-04-05T08:22:00+00:00" }, { "id": "01a08732-31b6-7345-80b1-d5e42905ef5d", "title": "Utilizing useOptimistic() Across the Component Tree in Next.js", "url": "https://aurorascharff.no/posts/utilizing-useoptimistic-across-the-component-tree-in-nextjs/", "published_at": "2024-02-24T15:22:00+00:00" }, { "id": "01a08732-31b6-7345-80b1-d5e42944e3f4", "title": "Implementing React Hook Form with Next.js 14 and Server Actions", "url": "https://aurorascharff.no/posts/implementing-react-hook-form-with-nextjs-14-server-actions/", "published_at": "2023-12-30T15:22:00+00:00" }, { "id": "01a08732-31b6-7345-80b1-d5e429f144fe", "title": "Running Tests with RTL and Vitest on Async and Internationalized React Server Components in Next.js App Router", "url": "https://aurorascharff.no/posts/running-tests-with-rtl-and-vitest-on-internationalized-react-server-components-in-nextjs-app-router/", "published_at": "2023-09-10T15:22:00+00:00" } ] posts Claim your blog
Back to aurorascharff.no
Blog · corpus.blog/blogs/aurorascharff.no/posts

aurorascharff.no

aurorascharff.no

2026

2025

2024

2023