Why Next.js Changed How I Think About the Web
After years of building websites, Next.js shifted my mental model. Here's what I learned and why it matters for every developer.

Alex Rivers
After years of building websites with various tools, Next.js fundamentally shifted my mental model of what a web application can be. Not because of any single feature, but because of how it makes you think.
The Mental Shift
Traditional web development has you thinking in pages. Next.js has you thinking in components that compose into pages. That sounds like a small distinction, but it changes everything.
When you think in components, you start seeing patterns everywhere. A blog post page isn't a monolithic template — it's a composition of a header, content renderer, author bio, related posts, and a newsletter form. Each piece is independent, testable, and reusable.
Server Components Changed Everything
React Server Components are the biggest shift since React itself. The idea is elegantly simple: some components only need to run on the server. They don't need interactivity, they don't need state, they just need to render HTML.
// This runs on the server — zero JavaScript sent to the browser
async function BlogPost({ slug }: { slug: string }) {
const post = await getPost(slug);
return (
<article>
<h1>{post.title}</h1>
<div>{post.content}</div>
</article>
);
}
The result? Faster pages, smaller bundles, and a simpler mental model. Your data-fetching code lives right next to your rendering code. No useEffect chains. No loading state juggling.
The File System is Your Router
app/
page.tsx → /
blog/
page.tsx → /blog
[slug]/
page.tsx → /blog/my-post
about/
page.tsx → /about
No router configuration. No route definitions. Just files and folders. It feels almost too simple, and that's exactly the point.
What I Build Differently Now
Since adopting Next.js, I've changed how I approach every project:
- Start with the data. What content exists? How is it structured?
- Design the URL structure. What pages need to exist?
- Build from the inside out. Start with the smallest components and compose upward.
- Add interactivity last. Most of the page doesn't need JavaScript.
The Bigger Lesson
The best tools don't just give you new capabilities — they give you better ways of thinking. Next.js did that for me, and I suspect it'll do the same for you.

Written by
Alex Rivers
Developer and technical writer. Passionate about clean code, clear communication, and the intersection of technology and humanity.
@alexrivers


