Folder Structure
Folder structure
Section titled “Folder structure”This guide explains what each folder and file in the Docuna project is for, so you know where to look when you need to make changes.
node_modules/
Section titled “node_modules/”Created automatically when you install dependencies with npm. It stores the packages and their dependencies that the project requires.
You do not need to edit anything here. The folder appears after you run:
npm installpublic/
Section titled “public/”For static files that should be served as-is. Images, icons, fonts, and other assets placed here are copied to the build output without processing.
Use this folder when you want a file to keep its exact filename and path in the final site.
The main working folder. Almost all development happens here.
src/assets/
Section titled “src/assets/”For files that need to be processed by Astro — for example, images that should be optimized at build time.
If you do not need Astro’s image optimization, place your files in public/ instead.
src/content/docs/
Section titled “src/content/docs/”Where all documentation articles and static pages live. Every .md or .mdx file here becomes a page on your site.
This is the folder you will edit most often when adding content.
src/data/
Section titled “src/data/”For JSON files that control the site’s content and layout. For example:
src/data/config/config.json— navbar menus, footer links, site titlesrc/data/home/home.json— landing page sections
Editing these files updates the site without touching any component code.
src/styles/
Section titled “src/styles/”For CSS files that define the theme’s appearance. This is where the site-wide styles live.
src/widget/
Section titled “src/widget/”For Astro components used to build the site’s layout — header, footer, pricing, features, and similar blocks.
If a section of the page needs structural changes, this is where you would edit it.
astro.config.mjs
Section titled “astro.config.mjs”The main configuration file for the Astro project. It defines the site URL, Starlight integration, sidebar structure, and other project-level settings.
You will edit this file when you need to:
- Change the site URL
- Update the site title
- Add or reorder sidebar groups
- Register a new folder for auto-generated sidebar items
Quick reference
Section titled “Quick reference”| Path | Purpose |
|---|---|
node_modules/ |
Installed packages (auto-generated) |
public/ |
Static files served as-is |
src/assets/ |
Files processed by Astro |
src/content/docs/ |
Documentation articles and static pages |
src/data/ |
JSON files for content and layout |
src/styles/ |
CSS files |
src/widget/ |
Astro layout components |
astro.config.mjs |
Project configuration |
With this structure in mind, the next guides cover configuration, content, and deployment in more detail.