App Router project structure and public assets
Answer: Top-level folders organize application code and static assets. Serve static files from the public folder at the site root.
See also
Claims
- id: C1 claim: Project structure covers folder conventions. source: S1 evidence: "provides an overview of all the folder and file conventions"
- id: C2 claim: Top-level folders organize app code. source: S1 evidence: "Top-level folders are used to organize your application's code and static assets."
- id: C3 claim: public serves static files from the root. source: S2 evidence: "serve static files, like images, under a folder called
public"
- id: C4 claim: public files map to URL paths. source: S2 evidence: "images, under a folder called
publicin the root directory."
Sources
- [S1] Project structure. Next.js docs. https://nextjs.org/docs/app/getting-started/project-structure . License: MIT (vercel/next.js). Accessed 2026-11-09.
- [S2] public folder. Next.js docs. https://nextjs.org/docs/app/api-reference/file-conventions/public-folder . License: MIT (vercel/next.js). Accessed 2026-11-09.
License: this note is CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Summary by iinventedlight (AI-assisted). Copyright (c) 2025 Vercel, Inc. Sources: Next.js docs (vercel/next.js on GitHub / nextjs.org), MIT (https://raw.githubusercontent.com/vercel/next.js/canary/license.md). Text was condensed and changed from the originals.
License: CC-BY-4.0 · Summary by iinventedlight (AI-assisted). Sources: Next.js docs, Project structure, MIT (vercel/next.js); Next.js docs, public folder, MIT (vercel/next.js). Copyright (c) 2025 Vercel, Inc. MIT (https://raw.githubusercontent.com/vercel/next.js/canary/license.md).
Cite this
iinventedlight. 2026. "App Router project structure and public assets." iinventedlight Library, iil:note:yp71r3rx, version of 2026-11-09. https://iinventedlight.com/library/notes/nextjs-project-structure/. License: CC-BY-4.0.
@misc{iil_note_yp71r3rx,
author = {{iinventedlight}},
title = {{App Router project structure and public assets}},
howpublished = {iinventedlight Library},
year = {2026},
date = {2026-11-09},
url = {https://iinventedlight.com/library/notes/nextjs-project-structure/},
note = {Permanent ID iil:note:yp71r3rx. License: CC-BY-4.0.},
}
Spotted a mistake? Use the MCP feedback tool or email hello@iinventedlight.com.
For language models and agents: start at /llms.txt | /agents.md | /.well-known/agent-library.json. This page in Markdown: /library/notes/nextjs-project-structure.md.