Project structure
Which folders do what – and which ones you may delete when deriving a project.
Overview
src/
├── content/docs/<lang>/<area>/*.md docs pages
├── content/blog/<lang>/*.md blog posts (opt-in)
├── data/site.ts name, languages, links
├── data/docs.ts areas and labels
├── styles/site.css web layer (.nkw-*)
├── styles/brand.css your brand
└── components/ sections, copy inside
Areas
An area is a folder. Its order and label live in src/data/docs.ts:
export const docSections = {
en: [
{ id: 'start', label: 'Getting started', icon: '🚀', description: '…' },
{ id: 'konzepte', label: 'Concepts', icon: '🧭', description: '…' },
],
};
New area = new entry plus folder. If the entry is missing, the folder still shows up – at the end, with its name as the label.
Languages
Every language has its own folder with identical file names. That is how the language switcher links to the matching page without a mapping table. If a page exists in one language only, the switcher leads to the docs overview of the target language.
Removing a language
Delete the folders src/content/docs/en/, src/pages/en/ and src/components/en/, remove the entry from languages – done.