← All posts

Why I Build with Next.js

There are plenty of frameworks to build web applications. I keep coming back to Next.js because it gives me the right constraints.

Server Components by Default

React Server Components mean less JavaScript shipped to the client. I can fetch data on the server, render HTML, and send it down without extra loading work for the browser. The result is faster pages and simpler code.

File-Based Routing

Creating a new page is just adding a file. No config, no route definitions. The filesystem is the routing table, and that mental model scales from a portfolio site to a full product.

Zero-Config Deployment

Push to GitHub, connect to Vercel, and the site is live. No build scripts, no environment headaches. I spend time on the product, not the infrastructure.

The Ecosystem

From image optimization to API routes to middleware — Next.js ships the features I actually need. And when I need something custom, the flexibility is there without fighting the framework.

Next.js isn't perfect, but it's the best set of tradeoffs I've found for the kind of work I do.