Set up a Next.js project from scratch and understand the App Router.
Next.js is a React framework that adds routing, server rendering, and build tooling on top of React. This guide gets you from zero to a running app.
npx create-next-app@latest my-app
cd my-app
npm run dev
This scaffolds a project using the App Router, TypeScript, and Tailwind CSS by default.
Every folder under app/ maps to a URL segment. A page.tsx file inside a
folder makes that segment a route:
app/
page.tsx -> /
about/page.tsx -> /about
blog/[slug]/page.tsx -> /blog/:slug
A layout.tsx wraps every page below it in the tree and persists across
navigations β use it for headers, footers, and sidebars.
Add data fetching directly inside your page components with async/await
β no separate data-fetching library required for the basics.
A beginner-friendly map of how websites work, what to learn first, and how to practise by building one small product.
A browser resolves a domain through DNS, opens a protected connection with HTTPS, sends an HTTP request, receives resources from a server or CDN, and renders them while JavaScript may request more data.
Web vocabulary becomes manageable when grouped by journey: a client resolves a domain through DNS, opens a network connection, sends an HTTP request, receives a response, and renders resources identified by URLs.