Why this lesson matters
Understand project structure and use it correctly in an App Router project. Next.js adds routing, server rendering, data boundaries and production build behavior around React; understanding the project tree prevents framework conventions from feeling magical.
How to reason about it
- For Project Structure, the outcome to verify is: A folder represents a route segment and page.tsx supplies that route UI.
- In Project Structure, keep this failure controlled: Treating Next.js as client-only React leads to unnecessary browser JavaScript and server/client boundary mistakes.
- Project Structure practice target: Create a fresh App Router project and identify which files own a page, layout, configuration and public asset.
Project layers
Routes
Practical walkthrough
In the Project Structure walkthrough: A folder represents a route segment and page.tsx supplies that route UI.
app/dashboard/page.tsxtsx
export default function DashboardPage() {
return <main><h1>Dashboard</h1></main>;
}Practice it yourself
Project Structure exercise
Create a fresh App Router project and identify which files own a page, layout, configuration and public asset.
- Record the expected result before execution
- Test one valid path and one lesson-specific failure path
- Explain in two lines which boundary owns the decision
