Course 07 · Framework

Next.js
React with a server attached.

Routing from the file system, server and client components, data fetching and deployment.

16Lessons
≈ 3hReading
16Playable now
App RouterServer componentsDataActionsDeploy

0 of 16 lessons finished — nothing yet

The syllabus

16 lessons,
in the order they build on each other.

Start lesson one ↗
01

What Next.js adds

Rendering strategies, what a framework buys you, and when plain React is enough.

≈ 10 min
02

Starting a project

create-next-app, the app directory, the dev server and the file conventions.

≈ 9 min
03

Routing

Nested routes, dynamic segments, catch-alls, groups and private folders.

≈ 12 min
04

Layouts and templates

Shared shells that do not re-render, nested layouts and where state survives.

≈ 11 min
05

Loading and error states

loading.tsx, error.tsx, not-found, and what streaming does to the waterfall.

≈ 10 min
06

Server and client components

The default, the "use client" boundary, and what may cross it.

≈ 14 min
07

Fetching data

Fetching on the server, caching, revalidation and request deduplication.

≈ 13 min
08

Server actions

Mutating data from a form, revalidating, and optimistic updates.

≈ 13 min
09

Route handlers

API endpoints in the app directory, request and response, and when you need one.

≈ 11 min
10

Metadata and SEO

The metadata object, dynamic titles, Open Graph images and the sitemap.

≈ 10 min
11

Images and fonts

next/image sizing and priority, next/font, and the layout shift they prevent.

≈ 10 min
12

Middleware

Running before a request completes: redirects, rewrites and protecting routes.

≈ 10 min
13

Authentication

Sessions across server and client components, and guarding a page properly.

≈ 12 min
14

Styling

CSS modules, global styles, Tailwind, and keeping the server component boundary.

≈ 10 min
15

Performance

The bundle, dynamic imports, caching layers and reading the build output.

≈ 11 min
16

Building and deploying

Environment variables, the build, a checklist before you ship, and what to watch after.

≈ 11 min