Documentation site for the Pyreon UI framework ecosystem.
- Framework: VitePress 1.x (static site generator)
- Components: Vue 3 (custom components in
.vitepress/theme/components/) - Linting: Biome
- Package manager: Bun
- Deployment: GitHub Pages via GitHub Actions
index.md — Homepage (VitePress hero layout)
docs/ — All documentation pages (flat .md files)
.vitepress/
config.ts — VitePress config (sidebar, nav, theme)
theme/
index.ts — Theme extension (registers global components)
custom.css — Brand colors and overrides
components/ — Custom Vue components for docs
PackageBadge.vue — Package status badge (stable/beta/alpha)
PropTable.vue — Props documentation table
APICard.vue — API item card with type badge
CompatMatrix.vue — Framework compatibility table
Since.vue — Version badge
bun run dev # Start dev server
bun run build # Build to .vitepress/dist/
bun run preview # Preview built site
bun run lint # biome check .
bun run lint:fix # biome check . --write
bun run format # biome format . --write
bun run check # lint + build- Each package has a
.mdfile indocs/(flat, no subfolders) - Markdown files use YAML frontmatter (
title,description) - Custom components available globally:
PackageBadge,PropTable,APICard,CompatMatrix,Since - Install blocks use VitePress code groups (
::: code-group) - Sidebar navigation is defined in
.vitepress/config.ts
- PackageBadge — Package name badge with status indicator (stable/beta/alpha/deprecated)
- PropTable — Props documentation table with columns: Prop, Type, Default, Description
- APICard — API item card with type badge (fn, C, H, T, K, P, Cx) and optional signature
- CompatMatrix — Framework compatibility table with support levels (full/partial/none)
- Since — Version badge (e.g. "v1.2.0+")
ci.yml— PR checks: lint, build, dependency-review, CodeQLdeploy.yml— Push to main: runs CI, then deploys.vitepress/dist/to GitHub Pagesdependency-update.yml— Weekly Monday:bun update, lint, build, auto-PRcodeql.yml— Weekly Wednesday: standalone security scan
- Static site generation — no server runtime
- All GitHub Actions pinned by SHA with version comment
- Biome for linting (scoped to
.vitepress/TypeScript and Vue files) - No tests — quality gates are lint + build