Provided as a Ruby gem, preserving Jekyll's Markdown, Liquid, YAML, and static hosting workflow
jekyll-vitepress-theme — Jekyll Documentation Template
By crmne
A Jekyll-based documentation theme that borrows VitePress's interface and reading experience, distributed as a Ruby gem, with additions such as Turbo Frames navigation, built-in SEO, and LLM discovery files.
Explore the design
Compare the page layouts and mobile experience. Open any screenshot for a closer look.
Actual screenshot captured by the server browser.
All pages & views 2
Screenshots show visual appearance; interactive behavior may differ.
What stands out
A quick read of the recorded project description.
Covers core documentation interface elements such as the documentation homepage, sidebar, outline, search, dark mode, code blocks, callouts, and footer
Uses Turbo Frames to replace only the content area, keeping navigation, sidebar, and shell mounted
Built-in SEO output: metadata, JSON-LD, sitemap.xml, robots.txt, with support for canonical overrides and noindex and other configuration
Generates /llms.txt and /llms-full.txt to make documentation content easier for LLMs to read
Provides extensions such as GitHub Star/Sponsor, RubyGems download counts, version tags, local search, and Copy Page
Template Details
jekyll-vitepress-theme is a Jekyll documentation theme released as a Ruby gem. Its goal is to provide a documentation interface and reading experience close to VitePress while preserving Jekyll's native workflow (Markdown, Liquid, YAML, and static files). It covers core documentation elements such as the documentation homepage, navigation, sidebar, outline, search, dark mode, code blocks, callouts, and documentation footer, and claims to match VitePress in these areas while offering several additional extensions for the Jekyll workflow.
Navigation is a notable feature of the theme: it uses Turbo Frames, similar to the approach in Rails applications, replacing only the content area while navigation, sidebar, and shell remain mounted, so page transitions do not require a full page refresh. The build output is still pure static HTML and can be deployed to GitHub Pages, a CDN, or other static hosting.
Beyond documentation, the theme includes built-in SEO and LLM discovery output: unified search and social metadata, JSON-LD (WebSite, WebPage or Article, Organization/Person, images, and nested breadcrumbs), sitemap.xml, robots.txt, as well as /llms.txt and /llms-full.txt. The README explicitly warns against also rendering {% seo %} or enabling other sitemap/robots generators, to avoid duplicate or contradictory signals.
Usage involves adding the gem to the Gemfile, setting the theme and plugins in _config.yml, configuring branding and the syntax highlighting theme, and then defining navigation and sidebar data via _data/navigation.yml and _data/sidebar.yml. The README recommends setting at least title, description, and an absolute production url; the build process warns about missing or duplicate metadata. The theme is MIT licensed, and the free scope is limited to the code in this version; third-party assets such as demo images, fonts, and icons require separate license verification, and external services such as domains and hosting may incur additional charges.
Is it right for your project?
Use Cases
- Building a documentation site for a Ruby project while wanting to keep Jekyll and static hosting
- Needing a documentation site with common reading features such as sidebar, outline, search, and dark mode
- Wanting the site to automatically output SEO metadata, JSON-LD, sitemap, and robots configuration
- Wanting to provide LLM-readable documentation indexes and collections in the form of llms.txt and llms-full.txt
- Wanting documentation page transitions without full page refreshes while still outputting static HTML
Suitable For
- Developers using Jekyll to build documentation sites
- Teams maintaining documentation for Ruby gems or Ruby projects
- Projects that need statically hosted documentation with built-in basic SEO configuration
- Site maintainers who want to add an LLM-readable index to their documentation
Getting started & customization
Use these recorded setup notes alongside the repository instructions for your chosen version.
- 1
Add gem "jekyll-vitepress-theme" to the Gemfile, and set the theme and plugins in _config.yml
- 2
Configure jekyll_vitepress branding and the syntax highlighting theme in _config.yml
- 3
Define navigation and sidebar data via _data/navigation.yml and _data/sidebar.yml
- 4
Set at least title, description, and an absolute production url in _config.yml; the build will warn about missing or duplicate metadata
- 5
Do not also render {% seo %} or enable other sitemap/robots generators, to avoid duplicate or contradictory signals
License & source material
Usage conditions & limitations
Free to use · keep license noticeThis entry covers the free version under the MIT license in the public repository; the free scope is limited to the code in this version and does not mean that external services or third-party assets are free.
Must comply with when using
- Free use, modification, commercial use, and distribution of this version's code are permitted.
- When distributing copies or substantial portions of the code, retain the original author's copyright notice and the full MIT license notice.
- The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.
Additional costs & items to verify
- When using this theme, you should not also render the {% seo %} tag or enable other sitemap/robots generators, otherwise duplicate or contradictory SEO signals will be produced.
- At least title, description, and an absolute production url must be configured in _config.yml, otherwise the build will warn about missing metadata.
- Demo images, fonts, icons, and other third-party assets must be checked against their respective licenses; they cannot be judged solely by the code's MIT license.
- External services such as domains, hosting, databases, payments, or AI may incur additional charges.
View Original Text Basis
Permission is hereby granted, free of charge
Original License Text
Do not also render `{% seo %}` or enable another sitemap/robots generator; that creates duplicated or contradictory signals.
Original README
https://github.com/crmne/jekyll-vitepress-theme/blob/master/LICENSEhttps://github.com/crmne/jekyll-vitepress-theme/blob/master/README.mdSet at least `title`, `description`, and an absolute production `url` in `_config.yml`.
Original README
Compiled by DeepSeek based on repository license and README ·2026-10-01. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.
Project checks & description sources
Template Information
- Source platforms
- GitHub
- Documentation and maintenance reference score
- More documented · 92 / 100
- Technologies
- Jekyll · VitePress
- Website type
- Documentation
How this score is calculated
Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.
What to verify for this project
- Repository update recorded
- 2026-09-26
- Screenshot last checked
- 2026-10-01
A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.
The catalog identifies Jekyll as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.
Use a selection guide →How this description was prepared
AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.
Automatically checked against source and license rules; no manual editorial review.
Inspect the recorded source material
SHA-256: 26214351babdb89701b3d6736c9c84828523e42eb12136acc15114fffc6fda16
2026-10-01T03:50:25.737Z
Source file / repository<div align="center">
<img src="assets/images/theme/vitepress-logo-large.svg" alt="Jekyll VitePress Theme" height="96">
# Jekyll VitePress Theme
<strong>Ruby deserves beautiful docs. Jekyll VitePress Theme brings VitePress-level polish to Jekyll, then goes beyond it.</strong>
[](https://rubygems.org/gems/jekyll-vitepress-theme)
[](https://github.com/crmne/jekyll-vitepress-theme/actions/workflows/main.yml)
[](https://jekyll-vitepress.dev)
[](LICENSE)
</div>
---
Ruby projects should not need to leave Ruby just to get documentation that feels designed.
`jekyll-vitepress-theme` brings VitePress-level documentation polish to Jekyll: a product-like homepage, familiar navigation, sidebars, outlines, search, dark mode, code blocks, callouts, and doc footers, packaged as a Ruby gem. It targets [VitePress parity](https://jekyll-vitepress.dev/vitepress-parity/) for the core docs experience and adds [extensions to VitePress](https://jekyll-vitepress.dev/extensions-to-vitepress/) for Jekyll-first workflows.
The unusual part is navigation. Jekyll VitePress uses Turbo Frames like a Rails app, swapping only the content frame while the nav, sidebar, and shell stay in place. Page changes feel instant, while the output remains plain Jekyll: Markdown, Liquid, YAML, Ruby, and static files.
## Why Use It
- **[VitePress polish for Jekyll](https://jekyll-vitepress.dev/vitepress-parity/):** match VitePress for the docs homepage, sidebar, outline, search, dark mode, callouts, code blocks, and doc footers.
- **Jekyll-native setup:** keep your Markdown, Liquid, YAML, and static hosting. Add the gem, set a few options, and publish.
- **Fast docs navigation:** Turbo Frames update the content area while the nav, sidebar, and shell stay mounted.
- **Search and AI discovery by default:** ship canonical metadata, social cards, JSON-LD, nested breadcrumbs, sitemap, robots controls, `llms.txt`, and `llms-full.txt` without another discovery plugin.
- **[More than VitePress](https://jekyll-vitepress.dev/extensions-to-vitepress/):** add GitHub Star and Sponsor buttons, RubyGems downloads, versions, labels, generated local search, and Copy Page/View as Markdown for LLM workflows.
- **Static Ruby output:** build with Jekyll and deploy the generated HTML to GitHub Pages, any CDN, or any static host.
## Quick Start
Add the gem:
```rb
gem "jekyll-vitepress-theme"
```
Enable the theme and plugin:
```yaml
theme: jekyll-vitepress-theme
plugins:
- jekyll-vitepress-theme
```
Add basic theme config:
```yaml
jekyll_vitepress:
branding:
site_title: My Docs
syntax:
light_theme: github
dark_theme: github.dark
```
Define navigation and sidebar data:
```yaml
# _data/navigation.yml
- title: Guide
url: /getting-started/
collections: [guides]
```
```yaml
# _data/sidebar.yml
- title: Guide
collection: guides
```
Run Jekyll:
```sh
bundle install
bundle exec jekyll serve --livereload
```
### SEO is built in
Every site using the theme gets one consistent set of search and social metadata, JSON-LD (`WebSite`, `WebPage` or `Article`, `Organization`/`Person`, image, and nested breadcrumbs), `sitemap.xml`, and `robots.txt`. Canonical overrides, `noindex`, language alternates, social images, authors, publishers, and webmaster verification tokens are configurable without another plugin.
Set at least `title`, `description`, and an absolute production `url` in `_config.yml`. The build warns about missing and duplicate metadata. Do not also render `{% seo %}` or enable another sitemap/robots generator; that creates duplicated or contradictory signals.
### LLM discovery is built in
The theme also creates `/llms.txt`, a concise canonical documentation index, and `/llms-full.txt`, a single Markdown bundle containing every eligible page and collection document. Redirects, `404` pages, `noindex` pages, and external-canonical duplicates are excluded. Both files understand `baseurl` and can be configured or disabled without `jekyll-ai-visible-content`.
## Screenshots
| Home | Docs |
| --- | --- |
|  |  |
## Docs
Read the full documentation at **[jekyll-vitepress.dev](https://jekyll-vitepress.dev)**.
Start here:
- [Getting Started](https://jekyll-vitepress.dev/getting-started/)
- [Configuration](https://jekyll-vitepress.dev/configuration/)
- [Navigation and Layout](https://jekyll-vitepress.dev/navigation-layout/)
- [Search and Outline](https://jekyll-vitepress.dev/search-and-outline/)
- [Configuration Reference](https://jekyll-vitepress.dev/configuration-reference/)
- [VitePress Parity](https://jekyll-vitepress.dev/vitepress-parity/)
- [Extensions to VitePress](https://jekyll-vitepress.dev/extensions-to-vitepress/)
## Development
```sh
bundle install
npm install
bundle exec jekyll serve --livereload
```
Run the tests:
```sh
bundle exec rake test
```
Run the full local verification suite (tests, linters, build, smoke test, gem build):
```sh
bundle exec rake verify
```
## License
MIT
Explore similar templates
Compare previews and descriptions within the same stack and category.

minimal-mistakes
Minimal Mistakes is a two-column Jekyll theme for personal sites, blogs, project documentation, or portfolios.
Jekyll · Portfolio

jekyll-TeXt-theme
A customizable Jekyll theme for personal sites, team sites, blogs, projects, and documentation.
Jekyll · Blog

jekyll-doc-theme
A Jekyll theme for project documentation websites, released under the MIT license. It organizes Markdown content into a navigable documentation site and can be deployed via local Ruby/Bundler build, a multi-stage Dockerfile with Nginx, or GitHub Pages remote theme.
Jekyll · Documentation

textlog
TextLog is a minimalist, left-sidebar Jekyll theme for documentation-style blogs. It includes a demo site and is MIT-licensed for free use, modification, commercial use, and distribution.
Jekyll · Blog

jekyll-materialdocs
MaterialDocs is a two-column Jekyll documentation theme built on Material Design Lite.
Jekyll · Documentation

MESGRO
MESGRO is a Jekyll template for robotics, mechatronics, and electronics engineers to build technical project portfolios.
Jekyll · Portfolio
