Getting Started with Next.js 15: What's New
Next.js 15 dropped and there's some genuinely cool stuff in here. Let me walk you through the highlights.
Next.js 15 Is Here
So Next.js 15 landed recently and I've been playing with it on a few projects. Figured I'd share my thoughts on what's actually useful versus what's just marketing hype.
The Good Stuff
Turbopack Is Actually Fast Now
Remember when Turbopack was announced and everyone was skeptical? Well, it's gotten a lot better. Dev server startup on my main project went from like 8 seconds to under 2. That's not nothing when you're restarting the dev server 50 times a day.
# In next.config.js or just run:
next dev --turbo
Partial Prerendering
This is the one I'm most excited about. You can now have static shells with dynamic holes:
import { Suspense } from 'react';
import { StaticHeader } from './StaticHeader';
import { DynamicContent } from './DynamicContent';
export default function Page() {
return (
<>
<StaticHeader /> {/* This gets prerendered */}
<Suspense fallback={<Loading />}>
<DynamicContent /> {/* This streams in */}
</Suspense>
</>
);
}
Best of both worlds - fast initial load with dynamic personalization.
Better Caching Defaults
The caching in Next.js 14 was... confusing. They've simplified it. Now `fetch()` doesn't cache by default in the App Router, which honestly makes more sense for most use cases.
What I'm Still Getting Used To
Server Actions Everywhere
Server Actions are cool but I keep forgetting they're a thing. Old habits die hard:
// Instead of making an API route...
async function submitForm(formData) {
'use server';
const email = formData.get('email');
await db.subscribers.create({ email });
revalidatePath('/newsletter');
}
It's actually pretty clean once you get used to it.
Migration Tips
If you're upgrading from 14:
1. Run `npx @next/codemod upgrade` - it handles most of the breaking changes 2. Check your `fetch()` calls - caching behavior changed 3. Update your middleware if you're using it
Worth the Upgrade?
Yeah, I think so. The performance improvements alone are worth it. Just budget some time for testing - there are enough small changes that something will probably break.
Let me know if you run into any weird issues upgrading. I've hit a few edge cases that might be worth writing about.