Skip to content
This repository was archived by the owner on Mar 26, 2026. It is now read-only.

feat: migrate from Fumadocs/Next.js to VitePress#22

Merged
vitbokisch merged 1 commit into
mainfrom
feat/vitepress-migration
Mar 25, 2026
Merged

feat: migrate from Fumadocs/Next.js to VitePress#22
vitbokisch merged 1 commit into
mainfrom
feat/vitepress-migration

Conversation

@vitbokisch
Copy link
Copy Markdown
Contributor

Summary

Complete rewrite of the documentation site from Fumadocs (Next.js) to VitePress for better alignment with Pyreon's Vite-native ecosystem.

What changed

  • Framework: Next.js 16 + Fumadocs → VitePress 1.6.4 + Vue 3.5
  • Components: 5 React components → Vue SFCs (PackageBadge, PropTable, APICard, CompatMatrix, Since)
  • Content: 52 MDX pages → VitePress markdown with code groups
  • Search: Fumadocs static search → VitePress built-in local search (MiniSearch)
  • Styling: Tailwind CSS v4 + custom CSS → VitePress default theme + brand overrides
  • Dependencies: 10 deps → 3 deps (vitepress, vue, @biomejs/biome)

Why

  • Pyreon is a Vite-native framework — docs should use Vite tooling, not React/Next.js
  • VitePress is what Vue, Vite, Rolldown, and similar projects use
  • Faster builds (~18s vs ~20s), simpler stack, smaller dependency footprint
  • Built-in code groups for package manager tabs (npm/bun/pnpm/yarn)

Output

  • 56 HTML pages rendered
  • Build: ~18s
  • Emerald/teal brand colors matching Pyreon identity

Test plan

  • bun run lint passes (3 files, no issues)
  • bun run build passes (56 pages rendered)
  • All 52 documentation pages converted
  • Custom components render correctly
  • CI workflow runs cleanly

🤖 Generated with Claude Code

Complete rewrite of the documentation site from Fumadocs (Next.js) to
VitePress for better alignment with Pyreon's Vite-native ecosystem.

- Replace Next.js 16 + Fumadocs with VitePress 1.6.4 + Vue 3.5
- Convert 5 custom React components to Vue SFCs (PackageBadge, PropTable,
  APICard, CompatMatrix, Since)
- Convert 52 MDX pages to VitePress markdown with code groups
- Convert JSX-style prop bindings to Vue template syntax
- Escape Vue-interpreted braces in code spans
- VitePress hero homepage with features grid
- Built-in local search (replaces fumadocs static search)
- Sidebar navigation defined in config.ts
- Brand colors: emerald/teal gradient matching Pyreon identity
- Update CI: build output .vitepress/dist/, remove typecheck job
- Drop 10 dependencies (fumadocs-*, next, react, tailwindcss, etc.)
- Add only 3 deps: vitepress, vue, @biomejs/biome
- 56 HTML pages rendered, build in ~18s

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@vitbokisch vitbokisch merged commit 08560b6 into main Mar 25, 2026
2 of 4 checks passed
@vitbokisch vitbokisch deleted the feat/vitepress-migration branch March 25, 2026 18:42
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant