A collection of awesome Jekyll plugins adding converters, generators, filters & tags, importers, new commands & switches, and more.
listed here; add your plugin here to get added - thanks!
Documentation
See the Official Plugins Page @ Jekyll Docs ».
Settings & Configurations Tweaks
- GitHub-Pages Unscramble ★3 (gem: github-pages-unscramble) by James Luberda – locally undoes the changes the GitHub pages plugin makes to a site’s original plugin_dir and safe configuration settings and loads any file-based plugins in plugins_dir as well as any blocked plugins in _config.yml
- Default Layout ★46 (gem: jekyll-default-layout) by Ben Balter – silently sets default layouts for pages and posts
- Optional Front Matter ★70 (gem: jekyll-optional-front-matter) by Ben Balter – makes front matter optional for markdown files
- Title from Headings ★83 (gem: titles-from-headings) by Ben Balter – pull page title from first markdown heading when none is specified
- Readme Index ★71 (gem: jekyll-readme-index) by Ben Balter – render a project’s README as the site’s index
- Data ★37 (gem: jekyll-data) by Ashwin Maroli – read datafiles in themes
Multi Language / Multi Lingual
- Multiple languages ★837 (gem: jekyll-multiple-languages-plugin) by Martin Kurtsson – I18n support for Jekyll and Octopress
- Language ★111 (gem: jekyll-language-plugin) by Vincent Wochnik – multi-language plugin for posts, pages and includes
- Polyglot ★299 (gem:
jekyll-polyglot
) by Samuel Volin – multi-lingual and I18n support tool - i18n Tags ★11 (gem: jekyll-i18n_tags) – Translate your templates.
- Localization ★68 (gem: jekyll-localization) – plugin that adds localization features to the rendering engine. Archived
Search
- Algolia ★185 (gem: jekyll-algolia) – Add fast and relevant search to your Jekyll site using the Algolia API.
- Searchyll ★43 (gem: searchyll) - Index your Jekyll pages to Elasticsearch, and works with Github pages.
Feeds & Syndication
- Feed ★197 (gem: jekyll-feed) – a plugin to generate an Atom (RSS-like) feed of your posts #Official #GitHub Pages
- Planet ★2 (gem: jekyll-planet) – add articles, blogs to your site via web feeds (and planet pluto)
Bibliography & Citiations
- Scholar ★974 (gem: jekyll-scholar) by Sylvester Keil – extensions for the blogging scholar.
- BibSonomy ★5 (gem: bibsonomy-jekyll) - generate publication lists from BibSonomy.
- jekyll_quote (gem: jekyll_quote) by Mike Slinn – Formats quotes with an optional citation and link in a Jekyll website.
Tags & Taggings, Categories & Categorizations
- Archives ★385 (gem: jekyll-archives) – archive pages for your tags and categories #Official
- Tagging ★367 (gem: jekyll-tagging) – plugin to automatically generate a tag cloud and tag pages.
- Tagging Related_Posts ★49 (gem: jekyll-tagging-related_posts) – related_posts function based on tags
Pagination
- Paginate ★94 (gem: jekyll-paginate) – pagination generator #Official #GitHub Pages
- Paginate V2 ★455 (gem: jekyll-paginate-v2) by Sverrir Sigmundarson et al – enhanced replacement for the old built-in jekyll-paginate
- Pagination ★44 (gem: jekyll-pagination) – plugin to extend the pagination generator. Archived
- Paginate::Category ★38 (gem: jekyll-paginate-category) – pagination generator for category.
- Auto Authors ★7 (gem: jekyll-auto-authors) – plugin to auto-generate author pages with pagination!
Figures & Captions
- Figure Tag ★33 (gem: jekyll_figure) – Generate figures and captions with links to the figure in a variety of formats
- Figure Tag ★47 (gem: jekyll-figure) – A liquid tag for Jekyll that generates
<figure>
elements.
Images & Pictures
- Picture Tag ★563 (gem: jekyll_picture_tag) – Easy responsive images for Jekyll. Based on the proposed
<picture>
element, polyfilled with Scott Jehl’s Picturefill. - Responsive Image ★312 (gem: jekyll-responsive_image) – Responsive images for Jekyll. Automatically resizes images, supports all responsive methods (
<picture>
,srcset
, Imager.js, etc), super-flexible configuration. - Image Encode Tag ★14 (gem: jekyll_image_encode) – tag that renders base64 codes of images fetched from the web.
- Cloudinary ★86 (gem: jekyll-cloudinary) by Nicolas Hoizey – tag to use Cloudinary for optimized responsive posts images.
- WebP Image Generator ★49 (gem: jekyll-webp) by Sverrir Sigmundarson et al – WebP image generator that automatically generate WebP images for all images on your site and serves them when possible
- Image Size ★19 (gem: jekyll-image-size) - read images and output image-sizes as: opengraph tags, img-tags, css and more - with retina support
- Loading Lazy ★41 (gem: jekyll-loading-lazy) – Adds
loading="lazy"
to lazily load your images and iframes without the need for JavaScript. - jekyll-imgix ★49 (gem: jekyll-imgix) – Transform, optimize, and intelligently cache your entire image library for fast websites and apps. Freemium/Commercial
- jekyll-postfiles ★109 (gem: jekyll-postfiles) – Ease the management of images (and other files) attached to Markdown blog posts
- jekyll-imgproxy-tag ★0 (gem: jekyll-imgproxy-tag) – Generate urls to secure imgproxy images.
- jekyll-responsive-magick ★0 (gem: jekyll-responsive-magick) – Responsive images via
srcset
,width
andheight
filters, automatic image resizing with ImageMagick. - jekyll_img (gem: jekyll_img) by Mike Slinn. – This versatile plugin embeds responsive images using the <picture> element in documents and pages with alignment options, flexible resizing, default styling, overridable styling, an optional caption, and an optional URL.
Bundled Icons / Images
- Octicons ★32 (gem: jekyll-octicons) – liquid plugin that makes including svg Octicons simple. Archived
- Jekyll PIG ★8 (gem: jekyll-pig) - Uses ImageMagick and pig.js to create progressive image galleries for Jekyll sites.
Videos & Screencasts
- YouTube ★79 (gem: jekyll-youtube) – a Liquid tag that embeds YouTube videos. The default emded markup is responsive but you can also specify your own by using an include/partial.
- Asciinema ★37 (gem: jekyll-asciinema) – a tag for embedding asciicasts recorded with asciinema in your Jekyll pages.
- ReactPlayer – a tag for embedding react-player supported formats in your Jekyll pages.
Audios & Podcasts
- Octopod ★114 (gem: jekyll-octopod) by Stefan Haslinger, Arne Eilermann, et al – a podcast publishing extension. Archived
Geocoding & Maps
- Geocode ★11 (gem: jekyll-geocode) by Bertrand Keller – geo-encode addresses from a datafile for drawing maps
- Maps ★123 (gem: jekyll-maps) by Anatoliy Yastreb – embed maps with filterable locations
Markup & Markdown Converters
- Pug, gem: jekyll-pug – convert Pug files into HTML
- Slim ★36, gem: jekyll-slim – Slim converter and includes for Jekyll with support for Liquid tags. Archived
- AsciiDoc ★276, gem: jekyll-asciidoc – AsciiDoc convertor for Jekyll using Asciidoctor.
- Commonmark ★29, gem: jekyll-commonmark – Markdown converter that uses libcmark, the reference parser for CommonMark.
- Textile ★15 (gem: jekyll-textile-converter) – convert
.textile
files into HTML; also includes thetextilize
Liquid filter #Official - Jektex ★17, gem: jektex – Jekyll plugin for blazing fast server side cached LaTeX rendering with support of macros. Enjoy comfort of latex and markdown without cluttering your site with bloated javascript.
Text Filters
- Mentions ★185 (gem: jekyll-mentions) – @mentionable support for your site #Official #GitHub Pages
- Jemoji ★503 (gem: jemoji) – GitHub-flavored emoji plugin #Official #GitHub Pages
- Time Ago ★138 (gem: jekyll-timeago) – Converts a time value to the time ago in words.
- jekyll_time_since (gem: jekyll_time_since) by Mike Slinn – Jekyll plugin that provides new Liquid filters called years_since, months_since, days_since, hours_since, minutes_since and seconds_since.
- Pluralize ★28 (gem: liquid_pluralize) by Benjamin Esham – Easily combine a number and a word into a grammatically-correct amount like “1 minute” or “2 minutes”.
- Reading Time ★109 (gem: liquid_reading_time) by Benjamin Esham – Count words and estimate reading time for a piece of text, ignoring HTML elements that are unlikely to contain running text.
- TOC (Table of Contents) ★260 (gem: jekyll-toc)– A liquid filter plugin for Jekyll which generates a table of contents.
- Smartify ★9 (gem: jekyll-smartify) by Pat Hawks – SmartyPants filter. Make "quotes" “curly”. Archived
- MD5 ★13 (gem: liquid-md5) by Pat Hawks – Returns an MD5 hash. Helpful for generating Gravatars in templates
- Roman ★6 (gem: jekyll-roman) by Paul Robert Lloyd – A liquid filter for Jekyll that converts numbers into Roman numerals
- Typogrify ★26 (gem: jekyll-typogrify) by Myles Braithwaite – A Jekyll plugin that brings the functions of typogruby.
- Email Protect ★75 (gem: jekyll-email-protect) by Vincent Wochnik – Email protection liquid filter for Jekyll
- Jekyll Liquify ★25 (gem: jekyll-liquify) a filter that parses Liquid from front matter
- jekyll_from_to_until
(gem: jekyll_from_to_until)
by Mike Slinn. –
Provides filters that return portions of a multiline string:
from
– returns the portion beginning with the line that satisfies a regular expression to the end of the multiline string.to
– returns the portion from the first line to the line that satisfies a regular expression, including the matched line.until
– returns the portion from the first line to the line that satisfies a regular expression, excluding the matched line.
- jekyll_basename_dirname
(gem: jekyll_basename_dirname)
by Mike Slinn –
Provides filters that return portions of a string:
basename
,dirname
andbasename_without_extension
. - jekyll_begin_end
(gem: jekyll_begin_end)
by Mike Slinn –
These filters return portions of a string:
begins_with
,does_not_begin_with
,ends_with
,does_not_end_with
, andappend_suffix_if_does_not_start_with
.
Tags
- Gist ★234 (gem: jekyll-gist) – Liquid tag for displaying GitHub Gists #Official #GitHub Pages
- Twitter ★225 (gem: jekyll-twitter-plugin) by Robert Murray – A Liquid tag plugin that renders Tweets from Twitter API. Currently supports the oEmbed API.
- Content Blocks ★144 (gem: jekyll-contentblocks) by Rusty Geldmacher – Lets you use Rails-like content_for tags in your templates, for passing content from your posts up to your layouts.
- Beastie Press ★7 (gem: jekyll-beastiepress) – FreeBSD utility tags.
- SWF Object ★5 (gem: jekyll-swfobject) – Liquid plugin for embedding Adobe Flash files (.swf) using SWFObject.
- Date Chart ★9 (gem: jekyll_date_chart) – Block that renders date line charts based on textile-formatted tables.
- Quick Man ★7 (gem: jekyll_quick_man) – Tag that renders pretty links to man page sources on the internet.
- GitHub Sample Tag ★57 (gem: jekyll_github_sample) – A liquid tag to include a sample of a github repo file in your Jekyll site.
- Project Version Tag ★28 (gem: jekyll_version_plugin) – A Liquid tag plugin that renders a version identifier for your Jekyll site sourced from the git repository containing your code.
- Inline Highlight ★26 (gem: jekyll_inline_highlight) – a tag for inline syntax highlighting.
- Mermaid ★97 (gem: jekyll-mermaid) – Simplify the creation of mermaid diagrams and flowcharts in your posts and pages.
- Giphy ★16 (gem: jekyll-giphy) – a plugin for embedding random giphy GIFs on Jekyll sites according to a user defined topic.
- PlantUML ★39 (gem: jekyll-plantuml) – Tag that renders UML diagrams using PlantUML.
- Jekyll oEmbed ★8 (gem: jekyll_oembed) – The tag version of ruby-oembed, letting you easily get embeddable HTML representations of supported web pages, based on their URLs. Archived
- Jekyll PDF Embed ★35 (gem: jekyll-pdf-embed) - Plugin for embedding PDF files to any page or post
- Jekyll Github Chart ★4 (gem: jekyll-github-chart) - Plugin to generate an SVG of Github contributions data
- Jekyll Twitch ★6 (gem: jekyll-twitch) - Embed Twitch clips, vods, collections, and even broadcasts!
- Jekyll Include ★12 (gem: jekyll_include_plugin) - Plugin for including local/remote file contents (or a part of it) into your pages.
- jekyll_flexible_include
(gem: jekyll_flexible_include)
by Mike Slinn.
Jekyll’s built-in include tag does not support including files outside of the_includes
folder. This plugin supports 4 types of includes:- Relative paths.
- Absolute paths, with optional security.
- Paths relative to the user home directory, with optional security.
- Executable commands, with optional security.
Paths support environment variables expansion. Also supports highlighting text matching a regex, and dark mode.
- Glossary Tooltip Tag ★7 (gem: jekyll-glossary_tooltip) by Erik Westrup - A tag for showing a tooltip with glossary term definitions on mouse hover. Common terms are defined in a shared file that can be re-used across all pages.
- jekyll_archive_display
(gem: jekyll_archive_display)
by Mike Slinn –
Jekyll tag plugin that lists the names and contents of each entry in a
tar
file. - jekyll_download_link (gem: jekyll_download_link) by Mike Slinn – Generates a link to download a file. The path can be absolute or relative to the website.
- jekyll_href
(gem: jekyll_href)
by Mike Slinn.
This plugin provides a versatile Jekyll tag that generates an a HTML href that defaults totarget="_blank"
andrel="nofollow"
. URLs can contain environment variable references. Also provides a convenient way to generate formatted and clickable URIs. Features optional automatically-generated soft hyphens. Thehref
tags in a page can be summarized by thehref_summary
tag. - jekyll_outline (gem: jekyll_outline) by Mike Slinn – Organizes the index of a collection into chapters.
- jekyll_pre (gem: jekyll_pre) by Mike Slinn – Jekyll tags for HTML <pre/>; copy content button, unselectable text, and incorporating command-line output into documents.
Search Engine Optimization (SEO) & Redirects
- Jekyll::NewsSitemap ★6 (gem: jekyll-news-sitemap) – Jekyll plugin to silently generate Google News Sitemap based on posts #Official #GitHub Pages Archived
- SEO Tag ★1.4k (gem: jekyll-seo-tag) – a plugin to add metadata tags for search engines and social networks to better index and display your site’s content #Official #GitHub Pages
- Sitemap Generator ★851 (gem: jekyll-sitemap) – a plugin to silently generate a sitemaps.org compliant sitemap for your site #Official #GitHub Pages
- Redirect From ★691 (gem: jekyll-redirect-from) – seamlessly specify multiple redirections URLs for your pages and posts #Official #GitHub Pages
- Google Search Console Verification File Generator ★3 (gem: jekyll-google_search_console_verification_file) by Erik Westrup - A very simple plugin that will generate a Google Search Console verification file to your
_site/
directory in a Jekyll project. This file is used by Google to verify that you own the site and could look for example likegooglef47733b3288357e4.html
.
Analytics
- Analytics ★191 (gem: jekyll-analytics) by Hendrik Schneider – adds webtracking easily to your site; supports multiple trackers like Google Analytics, Piwik, etc.
Generators
- Emoji ★85, gem: emoji_for_jekyll – seamlessly enable emoji for all posts and pages
- Autolink Email ★13, gem: jekyll-autolink_email by Ivan Tse – Autolink your emails.
- Git Metadata ★67, gem: jekyll-git_metadata by Ivan Tse – expose Git metadata for your templates
- Auto Image ★77, gem: jekyll-auto-image by Merlos – gets the first image of a post; useful to list your posts with images or to add twitter cards to your site
- Umlauts ★8, gem: jekyll-umlauts by Arne Gockeln – this generator replaces all german umlauts (äöüß) case sensitive with html
- Premonition ★38, gem: premonition by Jakob Vad Nielsen – Converts blockquotes into customizable styled markup blocks, like notes or warnings.
- Jekyll Data Pages Generator ★336, gem: jekyll-datapage-generator by Adolfo Villafiorita – Allows one to specify data files for which we want to generate one HTML page per record.
Commands & Switches
- Compose ★540 (gem: jekyll-compose) – streamline your writing with these commands #Official
- jekyll-gitlab-letsencrypt ★60 (gem: jekyll-gitlab-letsencrypt) – Automate letsencrypt requests/renewals for gitlab pages
Importers
- Importers ★456 (gem: jekyll-import) – The “import” command for importing from various blogs #Official
Other
- GitHub Metadata ★215 (gem: jekyll-github-metadata) –
site.github
#Official #GitHub Pages - Jekyll Spaceship ★381 (gem: jekyll-spaceship) – 🚀 A Jekyll plugin to provide powerful supports for table, mathjax, plantuml, mermaid, emoji, video, youtube, vimeo, dailymotion, audio, spotify, soundcloud, etc.
- Rendering ★22 (gem: jekyll-rendering) – provide alternative rendering engines. Archived
- Contentful ★94 (gem: jekyll-contentful-data-import) – Adds a
contentful
sub-command to Jekyll to import data from Contentful. - Paspagon ★10 (gem: jekyll-paspagon) – sell your posts in various formats for cryptocurrencies.
- PWA-Workbox ★22 (gem: jekyll-pwa-workbox) – Makes your PWA/Website available offline using Workbox. Injects a precache list into the service-worker and takes care of the registration process in a secure way.
- Target Blank ★82 (gem: jekyll-target-blank) – Automatically adds
target="_blank"
to external links, can add css-classes and/or variousrel=""
attributes. - Workbox ★14 (gem: jekyll-workbox-plugin) – Generate Service Worker using Google Workbox.
- Bootstrap 5 Tabs (gem: jekyll_bootstrap5_tabs) – Enables Bootstrap 5 tabs in Jekyll content.
- jekyll-http-request (gem: jekyll-http-request) by Jirawat Boonkumnerd – Liquid Filter for HTTP requests, helps get HTTP response data to the page content and cache.
Assets & Converters & Minifiers
- Sass Converter ★154 (gem: jekyll-sass-converter) – a Sass converter #Official #GitHub Pages
- Assets 3 ★1.1k (gem: jekyll-assets) – asset pipelines #Official
- Asset Pipeline Reborn ★52 (gem: japr) - powerful asset pipeline that collects, converts and compresses JavaScript and CSS assets.
- Mini Bundle ★67 (gem: jekyll-minibundle) – asset bundling and cache busting using external minification tool of your choice. No gem dependencies.
- Minifier ★232 (gem: jekyll-minifier) – minifies HTML, XML, CSS, and Javascript both inline and as separate files utilising yui-compressor and htmlcompressor.
- Autoprefixer ★64 (gem: jekyll-autoprefixer) – autoprefixer integration for Jekyll
- jekyll_archive_create
(gem: jekyll_archive_create)
by Mike Slinn –
Makes
tar
andzip
files based on_config.yml
entries. - Compass ★57 (gem: jekyll-compass – easily integrate Compass and Sass with your site. Archived
- Coffeescript ★44 (gem: jekyll-coffeescript) – a CoffeeScript converter #Official
- Opal ★34 (gem: jekyll-opal) – convert your Ruby into JavaScript using Opal #Official
Coding Support for Plugins & Liquid Programming
- jekyll_all_collections (gem: jekyll_all_collections) by Mike Slinn – If your Jekyll website has several collections, this plugin provides an aggregated collection.
- jekyll_draft (gem: jekyll_draft) by Mike Slinn – This plugin’s filters provide a simple means for marking draft pages in development mode.
- jekyll_plugin_logger (gem: jekyll_plugin_logger) by Mike Slinn – Colored Jekyll logging for plugins.
- jekyll_plugin_support (gem: jekyll_plugin_support) by Mike Slinn – Ruby gem that facilitates writing and testing Jekyll plugins.
- jekyll_nth
(gem: jekyll_nth)
by Mike Slinn –
Liquid filter that returns item
n
of a Ruby array, origin 1. - jekyll_random_hex (gem: jekyll_random_hex) by Mike Slinn – Outputs a string of random hexadecimal characters of any length.
Authentication & Authorization
- GitHub OAuth ★821 (gem: jekyll-auth) by Ben Balter et al – use GitHub OAuth to serve a protected site to your GitHub org
Admin & Visual Editors
-
Admin ★2.6k (gem: jekyll-admin) by Ben Balter, Mert Kahyaoğlu et al – adds a traditional content management system-style graphical interface to author content and administer sites #Official
-
Manager ★51 (gem: jekyll-manager) by Ashwin Maroli – An administrative framework for Jekyll sites, Jekyll Manager is essentially Jekyll Admin repackaged with some alterations.
Watch & Live Reload
- Watch ★88 (gem: jekyll-watch) – rebuild your site when a file changes with the
--watch
switch #Official - Hawkins ★57 (gem: hawkins) – adds a
liveserve
sub-command to Jekyll that incorporates LiveReload into your pages while you preview them. No more hitting the refresh button in your browser! Archived
Testing & Proofing
- Front Matter Tests ★28 (gem: jekyll_frontmatter_tests) by Greg Boone et al – tests the front matter of posts and other collection documents against a schema. Archived
Upload & Deploy
- Jekyll Deploy Action ★177 (jekyll-deploy-action) – 🪂 A Github Action to deploy the Jekyll site conveniently for GitHub Pages.
- Deploy ★33 (gem: jekyll-deploy) – adds a
deploy
command - ZMediumToJekyll ★3 – A public GitHub template repo that can help you easily move your Medium posts to a Jekyll blog and keep them in sync in the future, by simply click ‘Use this template’ to get started!
Debugging
- Jekyll Debug ★12 (gem: jekyll-debug) a filter that allows a user to debug liquid filters and tags at runtime