Jekyll Dash is an open-source blog theme for Jekyll, distributed as a Ruby gem, that pairs dark and light color schemes modeled after the Dash UI theme for Atom.
What is Jekyll Dash?
Jekyll Dash is a Jekyll blog theme published as the Ruby gem jekyll-dash, maintained by GitHub user bitbrain, and released under the Apache License 2.0. It takes a standard Jekyll site — pages, posts, and _config.yml settings — and renders a blog layout with a dark/light mode toggle, tag pages, pagination, a customizable avatar box, and footer social links. Two major gem versions exist: 1.x targets Jekyll 3.x while 2.x targets Jekyll 4.x, and GitHub Pages currently only supports Jekyll 3.9.x. The repository has 314 stars and includes a full README with configuration examples, a FAQ, and a GitHub Actions deployment guide.
Key Features
Jekyll Dash ships the following features, configured through the dash block in _config.yml:
- Dark/Light Mode — the theme includes both color schemes out of the box, inspired by the Dash UI theme for Atom.
- Right-to-Left (RTL) Support — set
rtl: truein the configuration to flip the layout for Arabic, Hebrew, or other RTL languages. - Pagination — works with the
jekyll-paginateplugin; configurepaginateandpaginate_path, and note that pagination only works with anindex.htmlfile, not Markdown. - Tagging — add the
jekyll-taggingplugin and configuretag_page_layout,tag_permalink_style, andtag_page_dirto generate tag pages. - Customisable Avatar Box — choose Gravatar (via the
liquid-md5gem), a GitHub avatar throughgithub_username, or a local image viaavatar_path. - Social Links — footer links defined with icon names and ten configurable colors: green, red, orange, blue, cyan, pink, teal, yellow, indigo, and purple.
- Disqus Comments — enable per-post comments by setting a Disqus
shortnameand the siteurlin the config. - Syntax Highlighting — built-in code highlighting for technical blog posts, alongside a configurable date format and a scroll-in animation effect.
Who is it for?
Jekyll Dash fits bloggers and developers who want a gem-installed Jekyll theme with dark/light mode, RTL support, and GitHub Pages hosting.
- GitHub Pages bloggers — set up a free Jekyll blog with a custom domain by adding a
CNAMEfile andinclude: [CNAME]; full tag support requires building the_siteseparately with GitHub Actions. - Developers who like the Dash UI aesthetic — the theme recreates the Atom Dash UI dark-and-light look for a blog.
- RTL language writers — authors publishing in Arabic, Hebrew, or Persian can enable the built-in right-to-left layout with a single flag.
- Self-hosted Jekyll users — anyone running Jekyll 3.x or 4.x locally who wants a theme with Disqus, pagination, social links, and an author box.
What can you do with Jekyll Dash?
- Personal bloggers: publish a free blog on GitHub Pages with Disqus comments, paginated post listing, and a custom domain in a CNAME file.
- Technical writers: use the built-in syntax highlighting and tag pages to organize code-heavy posts by topic.
- Indie developers: configure the footer social links with themed icon colors (for example, cyan for Twitter and purple for GitHub) without hand-editing HTML.
- International authors: flip the entire layout to RTL by setting
rtl: truein the dash config.
How does Jekyll Dash work?
Jekyll Dash is installed by adding gem 'jekyll-dash' to your Gemfile (version ~> 1 for Jekyll 3, version ~> 2 for Jekyll 4), setting theme: jekyll-dash in _config.yml, and running bundle. The dash block then controls date format, avatar source, social links, RTL mode, animation speed, and Disqus. To preview locally, run bundle exec jekyll serve and open http://localhost:4000.
Pricing
Jekyll Dash is free and open source under the Apache License 2.0. It is published to Rubygems as jekyll-dash, so installation is a Gemfile entry plus bundle.
FAQ
What versions of Jekyll does Jekyll Dash support?
Version 1.x of the gem works with Jekyll 3.x, and version 2.x works with Jekyll 4.x. GitHub Pages currently only supports Jekyll 3.9.x, so pin the gem to ~> 1 there. If Bundler reports incompatible versions, you are likely mixing these.
Why are no posts showing on my Jekyll Dash site?
You probably forgot to configure jekyll-paginate. Add paginate and paginate_path to _config.yml. If paginate then complains about a missing index.html, rename your index.md file to index.html, because pagination only works with HTML files.
Why don't my tags appear?
Tags require the jekyll-tagging plugin, and GitHub Pages does not support it natively. Build the site separately with GitHub Actions and push the generated _site directory to a hosting branch, following the guide linked in the README.
Why does Disqus fail to load?
Make sure the url in _config.yml is set to your real site URL and that your domain is added as a trusted domain in Disqus. Both are required for the comment embed to load.
I get a "cannot load such file -- webrick" error when running the server?
This is a known issue with some recent Jekyll 4 versions. Run bundle add webrick to add the missing dependency.
Alternatives
Minimal Mistakes, another widely used Jekyll theme.





