Skip to content

feat: migrate site from Nanoc to Docusaurus#372

Open
pkuczynski wants to merge 2 commits into
masterfrom
docusaurus
Open

feat: migrate site from Nanoc to Docusaurus#372
pkuczynski wants to merge 2 commits into
masterfrom
docusaurus

Conversation

@pkuczynski
Copy link
Copy Markdown
Member

@pkuczynski pkuczynski commented Feb 23, 2026

Summary

  • Migrate the RVM documentation site from Nanoc 3.8.0 (Ruby) to Docusaurus 3.7.0 (TypeScript/React)
  • Convert 76 HAML documentation files to Markdown and adjust 40 existing Markdown files
  • Convert 36 blog posts to Docusaurus front matter format
  • Add custom homepage, Ruby-red themed CSS, Algolia search integration
  • Configure sidebar navigation matching the original doc_menu structure

Approach

Split into two commits to preserve git file history:

  1. refactor: move content files — pure git mv renames (no content changes) so GitHub shows proper file renames
  2. feat: convert content — HAML→Markdown conversion, front matter updates, Docusaurus configuration files

Test plan

  • npm install — dependencies install cleanly
  • npm run build — site builds successfully (177 HTML pages)
  • All doc sections appear in sidebar navigation
  • Blog posts render with correct dates, authors, tags
  • Internal links validated (no broken links)
  • Visual review of rendered pages via npm run serve
  • Verify Algolia search integration works

Move all content files to their new locations for Docusaurus:
- content/**/*.{md,haml} → docs/**/*.md (documentation)
- content/blog/*.md → blog/*.md (blog posts)
- content/assets/images/ → static/images/ (static assets)
- GPG keys, licenses, favicon, verification files → static/

Remove old Nanoc infrastructure:
- Ruby build system (Gemfile, Rakefile, Rules, config.yaml, compass)
- HAML layouts and partials (layouts/)
- Ruby helpers and filters (lib/)
- Auto-generated tag/author pages, CSS, JS

This is a pure rename/move commit — no content changes.
- Convert 76 HAML documentation files to Markdown
- Convert 36 blog post front matter to Docusaurus format
- Add Docusaurus configuration (docusaurus.config.ts, sidebars.ts)
- Add custom homepage, CSS theme, and blog authors
- Update .gitignore, CLAUDE.md, and README.md for new stack
- Fix internal links for new URL structure
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant