A Docus site on Nuxt 4. Everything readers see lives in content/ as Markdown —
no build step to learn, no components to wire up for a normal page.
bun install
bun run dev # http://localhost:3000| Command | Does |
|---|---|
bun run dev |
Dev server with hot reload |
bun run build |
Production build into .output/ |
bun run preview |
Serve the built output |
bun run generate |
Static export |
content/
en/ # English — the source of truth
de/ # German — mirrors en/
1.getting-started/
2.guide/
3.operations/
4.api/
5.cloud/
6.development/
app/
app.config.ts # Header, logo, socials, colours
components/content/ # MDC components usable from Markdown (:the-globe, …)
public/logo/ # Wordmarks and icons
nuxt.config.ts # Docus, i18n, colour mode
Numeric prefixes (2.guide) set the sidebar order and are stripped from the URL.
Each directory carries a .navigation.yml for its title and icon.
- Write the English page first, then mirror it under
content/de/at the same path. enis unprefixed (/guide/monitors), German is prefixed (/de/guide/monitors).- Pages support MDC — the
::u-page-section,::u-page-cardand friends used across the site. - The site renders dark by default; check both modes before opening a PR.
The included Dockerfile builds the Nitro output onto a bare node:alpine:
docker build -t upcore-docs .
docker run -p 3000:3000 upcore-docsCI publishes the image to ghcr.io/upcore-app/docs on every push to main.
Issues and pull requests are welcome. For anything about upcore itself — features, bugs, security — use the product repo.
Questions and support run through our Discord: discord.gg/eWeaQZYcyd. Want upcore without hosting it yourself? upcore Cloud is free to start.