jekyll is a free, open source blogging & personal sites project written in Ruby and released under MIT. It has 51,677 GitHub stars, 10,300 forks and 258 open issues, and was last pushed 4 hours ago. On this registry it ranks #5 of 25 tracked projects in Blogging & Personal Sites, with 5 head-to-head comparisons available. It gained 7 stars over the last 3 tracked days.

What is jekyll?

What it is

Jekyll is a blog-aware static site generator written in Ruby and released under the MIT license. It takes content written in Markdown together with Liquid templates and renders a complete static website that can be served by Apache, Nginx, or any other web server. The project describes itself as a file-based CMS without the complexity of a database-backed one, and it is the engine behind GitHub Pages, which hosts sites directly from GitHub repositories. It lives in the Ruby ecosystem, is distributed as a gem, and has been developed for roughly eighteen years.

The concrete problem it solves is the gap between writing and publishing. A writer who wants a blog or a project site normally has to run a server, a database, and an administrative interface, or hand over control of the content to a hosted platform. Jekyll removes that layer. Content stays as files in a repository, templates control presentation, and the build step produces plain HTML that any web server can deliver. Because the output is static, there is no runtime application to keep alive, and because the source is text, the site can be versioned, reviewed, and migrated like any other code.

Key capabilities

  • Renders Markdown content and Liquid templates into a complete static website.
  • Supports front matter, the metadata block that drives per-page and per-post behaviour.
  • Exposes site variables for use inside templates.
  • Generates posts with customizable permalink structures.
  • Provides built-in Liquid extensions for common templating tasks.
  • Accepts custom plugins that generate content specific to a site.
  • Ships migration tooling for importing content from previous systems.

Who uses it and how

  • Individuals running personal blogs, where posts are Markdown files committed to a repository.
  • Project and organization sites that publish documentation and release notes as static pages.
  • GitHub Pages users, who get Jekyll as the build engine for sites hosted from their repositories.
  • Teams migrating from an older publishing system, using the documented import path to move existing content.
  • Template authors and plugin developers extending the generator for site-specific output.

Getting started

Install the gem, then follow the usage and configuration documentation at jekyllrb.com. GitHub Pages offers a hosted route for sites built from a repository.

When to use it — and when not to

Jekyll suits anyone who wants content in version control and output that needs no application server, and it is the natural choice when the site is destined for GitHub Pages. A self-hoster operates the Ruby toolchain and the build step rather than a database or mail service, since the result is static files. The main caveat visible in the project data is the size of the open issue backlog, currently 258, which is worth weighing against the project's long history and active release cadence.

project readme (upstream, from github) — read inline

Jekyll

Gem Version Build Status Backers on Open Collective Sponsors on Open Collective

Jekyll is a simple, blog-aware, static site generator perfect for personal, project, or organization sites. Think of it like a file-based CMS, without all the complexity. Jekyll takes your content, renders Markdown and Liquid templates, and spits out a complete, static website ready to be served by Apache, Nginx or another web server. Jekyll is the engine behind GitHub Pages, which you can use to host sites right from your GitHub repositories.

Philosophy

Jekyll does what you tell it to do — no more, no less. It doesn't try to outsmart users by making bold assumptions, nor does it burden them with needless complexity and configuration. Put simply, Jekyll gets out of your way and allows you to concentrate on what truly matters: your content.

See: https://jekyllrb.com/philosophy

Getting Started

Diving In

Need help?

If you don't find the answer to your problem in our docs, or in the troubleshooting section, ask the community for help.

Code of Conduct

In order to have a more open and welcoming community, Jekyll adheres to a code of conduct adapted from the Ruby on Rails code of conduct.

Please adhere to this code of conduct in any interactions you have in the Jekyll community. It is strictly enforced on all official Jekyll repositories, websites, and resources. If you encounter someone violating these terms, please let one of our core team members know and we will address it as soon as possible.

Credits

Sponsors

Support this project by becoming a sponsor. Your logo will show up in this README with a link to your website. Become a sponsor! Jekyll Sponsor 0 Jekyll Sponsor 1 Jekyll Sponsor 2 Jekyll Sponsor 3 Jekyll Sponsor 4 Jekyll Sponsor 5 Jekyll Sponsor 6 Jekyll Sponsor 7 Jekyll Sponsor 8 Jekyll Sponsor 9

Contributors

This project exists thanks to all the people who contribute. Jekyll Contributors

Backers

Thank you to all our backers! 🙏 Become a backer

Jekyll Backers

License

See the LICENSE file.

Frequently asked questions

Is jekyll free to use?

jekyll is open source under the MIT licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does jekyll do?

:globe_with_meridians: Jekyll is a blog-aware static site generator in Ruby

What is jekyll written in?

jekyll is primarily written in Ruby. Its source is publicly available at https://github.com/jekyll/jekyll, and it has 51,677 GitHub stars.