# Next.js 14 to Next.js 15 Complete Migration Guide
> Framework: Next.js (v14.2 -> v15.0)
> Automated Codemod: `npx @next/codemod@latest next-async-request-api .`
> Canonical URL: https://agentnow.in/migrations/nextjs-14-to-15-migration

## Summary
Next.js 15 introduces asynchronous Page/Layout params, asynchronous cookies() and headers(), React 19 support, and unbundled fetch caching.

## Key Breaking Changes
- Page and layout props `params` and `searchParams` are now Promises and must be awaited.
- `cookies()` and `headers()` from `next/headers` return Promises and must be awaited.
- `fetch` requests in Server Components are no longer cached by default (`cache: 'no-store'` is default).
- Turbopack is now the default dev server (`next dev --turbo`).

## Automated Codemod Command
```bash
npx @next/codemod@latest next-async-request-api .
```

## Verified Code Migration Diff
```diff
// Next.js 14 -> 15 Route Parameters Migration
- export default function Page({ params }: { params: { id: string } }) {
-   const { id } = params;
-   return <div>ID: {id}</div>;
- }
+ export default async function Page({ params }: { params: Promise<{ id: string }> }) {
+   const { id } = await params;
+   return <div>ID: {id}</div>;
+ }
```
