JekyllVitePressDocumentation

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.

2 previews
Desktop homepage1 / 2
Desktop captureTop of page

Actual screenshot captured by the server browser.

All pages & views 2

Screenshots show visual appearance; interactive behavior may differ.

Recorded 2026-10-01View source

What stands out

A quick read of the recorded project description.

01

Provided as a Ruby gem, preserving Jekyll's Markdown, Liquid, YAML, and static hosting workflow

02

Covers core documentation interface elements such as the documentation homepage, sidebar, outline, search, dark mode, code blocks, callouts, and footer

03

Uses Turbo Frames to replace only the content area, keeping navigation, sidebar, and shell mounted

04

Built-in SEO output: metadata, JSON-LD, sitemap.xml, robots.txt, with support for canonical overrides and noindex and other configuration

05

Generates /llms.txt and /llms-full.txt to make documentation content easier for LLMs to read

06

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.

JekyllVitePressDocumentation

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. 1

    Add gem "jekyll-vitepress-theme" to the Gemfile, and set the theme and plugins in _config.yml

  2. 2

    Configure jekyll_vitepress branding and the syntax highlighting theme in _config.yml

  3. 3

    Define navigation and sidebar data via _data/navigation.yml and _data/sidebar.yml

  4. 4

    Set at least title, description, and an absolute production url in _config.yml; the build will warn about missing or duplicate metadata

  5. 5

    Do not also render {% seo %} or enable other sitemap/robots generators, to avoid duplicate or contradictory signals

Read repository instructions

License & source material

Usage conditions & limitations

Free to use · keep license notice

This 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

Set at least `title`, `description`, and an absolute production `url` in `_config.yml`.

Original README
https://github.com/crmne/jekyll-vitepress-theme/blob/master/LICENSEhttps://github.com/crmne/jekyll-vitepress-theme/blob/master/README.md

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>

[![Gem Version](https://img.shields.io/gem/v/jekyll-vitepress-theme.svg)](https://rubygems.org/gems/jekyll-vitepress-theme)
[![CI](https://github.com/crmne/jekyll-vitepress-theme/actions/workflows/main.yml/badge.svg)](https://github.com/crmne/jekyll-vitepress-theme/actions/workflows/main.yml)
[![Docs](https://img.shields.io/badge/docs-jekyll--vitepress.dev-blue)](https://jekyll-vitepress.dev)
[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](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 |
| --- | --- |
| ![Home page in light mode](assets/images/screenshots/home-light.png) | ![Docs page in light mode](assets/images/screenshots/getting-started-light.png) |

## 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
Report a correction

Explore similar templates

Compare previews and descriptions within the same stack and category.