{"id":45153,"url":"https://github.com/planetjekyll/awesome-jekyll-plugins","name":"awesome-jekyll-plugins","description":"A collection of awesome Jekyll plugins (gems, scripts, pasties, etc.)","projects_count":197,"last_synced_at":"2026-10-19T13:00:23.364Z","repository":{"id":7867033,"uuid":"56700174","full_name":"planetjekyll/awesome-jekyll-plugins","owner":"planetjekyll","description":"A collection of awesome Jekyll plugins (gems, scripts, pasties, etc.)","archived":false,"fork":false,"pushed_at":"2026-09-12T21:16:00.000Z","size":276,"stargazers_count":1415,"open_issues_count":0,"forks_count":90,"subscribers_count":27,"default_branch":"master","last_synced_at":"2026-09-29T23:31:55.746Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/planetjekyll.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2016-04-20T15:46:45.000Z","updated_at":"2026-09-21T19:31:01.000Z","dependencies_parsed_at":"2022-07-21T11:32:57.554Z","dependency_job_id":"638ef33a-8458-4f77-a6c6-5509456507b5","html_url":"https://github.com/planetjekyll/awesome-jekyll-plugins","commit_stats":{"total_commits":139,"total_committers":45,"mean_commits":3.088888888888889,"dds":"0.47482014388489213","last_synced_commit":"e14e42e9999b68aca102b33c5ff5174a075f0609"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/planetjekyll/awesome-jekyll-plugins","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/planetjekyll%2Fawesome-jekyll-plugins","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/planetjekyll%2Fawesome-jekyll-plugins/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/planetjekyll%2Fawesome-jekyll-plugins/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/planetjekyll%2Fawesome-jekyll-plugins/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/planetjekyll","download_url":"https://codeload.github.com/planetjekyll/awesome-jekyll-plugins/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/planetjekyll%2Fawesome-jekyll-plugins/sbom","scorecard":{"id":736921,"data":{"date":"2025-08-11","repo":{"name":"github.com/planetjekyll/awesome-jekyll-plugins","commit":"41a7fe0d14ea6b95b82e0b2197b421b35ac2cb6c"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.7,"checks":[{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Code-Review","score":8,"reason":"Found 24/30 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Maintained","score":0,"reason":"1 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"License","score":0,"reason":"license file not detected","details":["Warn: project does not have a license file"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-22T16:09:05.556Z","repository_id":7867033,"created_at":"2025-08-22T16:09:05.557Z","updated_at":"2025-08-22T16:09:05.557Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":344872684,"owners_count":38356497,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-10-03T21:59:58.778Z","status":"online","status_checked_at":"2026-10-19T02:00:06.414Z","response_time":53,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"created_at":"2024-01-13T21:19:04.636Z","updated_at":"2026-10-19T13:00:23.364Z","primary_language":"Ruby","list_of_lists":false,"displayable":true,"categories":["Documentation","Bibliography \u0026 Citiations","Images \u0026 Pictures","Markup \u0026 Markdown Converters","Text Filters","Assets \u0026 Converters \u0026 Minifiers","Tags","Coding Support for Plugins \u0026amp; Liquid Programming","Admin \u0026 Visual Editors","Multi Language / Multi Lingual","Pagination","Tags \u0026 Taggings, Categories \u0026 Categorizations","Search Engine Optimization (SEO) \u0026 Redirects","Feeds \u0026 Syndication","Settings \u0026 Configurations Tweaks","Commands \u0026 Switches","Other","Upload \u0026 Deploy","Search","Figures \u0026 Captions","Bundled Icons / Images","Videos \u0026 Screencasts","Audios \u0026 Podcasts","Geocoding \u0026 Maps","Analytics","Generators","Importers","Authentication \u0026 Authorization","Watch \u0026 Live Reload","Testing \u0026 Proofing","Debugging","Comments"],"sub_categories":[],"readme":"Awesome Series @ Planet Jekyll\n\n[Jekyll](https://github.com/planetjekyll/awesome-jekyll) •\n[Jekyll Themes](https://github.com/planetjekyll/awesome-jekyll-themes) •\n[Jekyll Plugins](https://github.com/planetjekyll/awesome-jekyll-plugins) •\n[Jekyll Editors](https://github.com/planetjekyll/awesome-jekyll-editors)\n\n\n# Awesome (Gem-Packaged) Jekyll Plugins\n\n[![Awesome](https://awesome.re/badge-flat.svg)](https://awesome.re)\n\nA collection of awesome Jekyll plugins adding converters, generators, filters \u0026 tags,\nimporters, new commands \u0026 switches, and more.\n\n#### _Contributions welcome. Anything missing? Send in a pull request. Thanks._\n\n\u003e Note: See the [Plugins \u0026 Extensions Page @ Planet Jekyll](http://planetjekyll.github.io/plugins) - listing all gem-packaged plugins\n\u003e listed here; add your plugin here to get added - thanks!\n\n\n## Documentation\n\nSee the [Official Plugins Page @ Jekyll Docs](http://jekyllrb.com/docs/plugins) ».\n- [**jekyll-changelog**](https://github.com/jchance/jekyll-changelog) (gem: [jekyll-changelog](https://rubygems.org/gems/jekyll-changelog)) by Jason Chance -- Auto-generated changelog from git commits for Jekyll.\n\n\n## Settings \u0026 Configurations Tweaks\n\n- [**GitHub-Pages Unscramble**](https://github.com/jamesluberda/github-pages-unscramble) ★3 (gem: [github-pages-unscramble](https://rubygems.org/gems/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\n- [**Default Layout**](https://github.com/benbalter/jekyll-default-layout) ★46 (gem: [jekyll-default-layout](https://rubygems.org/gems/jekyll-default-layout)) by Ben Balter -- silently sets default layouts for pages and posts\n- [**Optional Front Matter**](https://github.com/benbalter/jekyll-optional-front-matter) ★70 (gem: [jekyll-optional-front-matter](https://rubygems.org/gems/jekyll-optional-front-matter)) by Ben Balter -- makes front matter optional for markdown files\n- [**Title from Headings**](https://github.com/benbalter/jekyll-title-from-headings) ★83 (gem: [titles-from-headings](https://rubygems.org/gems/titles-from-headings)) by Ben Balter --  pull page title from first markdown heading when none is specified\n- [**Readme Index**](https://github.com/benbalter/jekyll-readme-index) ★71 (gem: [jekyll-readme-index](https://rubygems.org/gems/jekyll-readme-index)) by Ben Balter -- render a project's README as the site's index\n- [**Data**](https://github.com/ashmaroli/jekyll-data) ★37 (gem: [jekyll-data](https://rubygems.org/gems/jekyll-data)) by Ashwin Maroli -- read datafiles in themes\n\n\n## Multi Language / Multi Lingual\n\n- [**Multiple languages**](https://github.com/kurtsson/jekyll-multiple-languages-plugin) ★837 (gem: [jekyll-multiple-languages-plugin](https://rubygems.org/gems/jekyll-multiple-languages-plugin)) by Martin Kurtsson -- I18n support for Jekyll and Octopress\n- [**Language**](https://github.com/vwochnik/jekyll-language-plugin) ★111 (gem: [jekyll-language-plugin](https://rubygems.org/gems/jekyll-language-plugin)) by Vincent Wochnik -- multi-language plugin for posts, pages and includes\n- [**Polyglot**](https://github.com/untra/polyglot) ★299 (gem: [`jekyll-polyglot`](https://rubygems.org/gems/jekyll-polyglot)) by Samuel Volin -- multi-lingual and I18n support tool\n- [**i18n Tags**](https://github.com/KrzysiekJ/jekyll-i18n_tags) ★11 (gem: [jekyll-i18n_tags](https://rubygems.org/gems/jekyll-i18n_tags)) -- Translate your templates.\n- [**Localization**](https://github.com/prometheus-ev/jekyll-localization) ★68 (gem: [jekyll-localization](https://rubygems.org/gems/jekyll-localization))  --  plugin that adds localization features to the rendering engine. **Archived**\n\n\n## Search\n\n- [**Algolia**](https://github.com/algolia/jekyll-algolia) ★185 (gem: [jekyll-algolia](https://rubygems.org/gems/jekyll-algolia/))  --  Add fast and relevant search to your Jekyll site using the Algolia API. **Deprecated**\n- [**Searchyll**](https://github.com/omc/searchyll) ★43 (gem: [searchyll](https://rubygems.org/gems/searchyll/)) - Index your Jekyll pages to Elasticsearch, and works with Github pages.\n- [**Pagefind**](https://github.com/phothinmg/jekykll-pagefind) ★1 (gem: [jekyll-pagefind](https://rubygems.org/gems/jekyll-pagefind/)) -- Run pagefind binary in jekyll site\n\u003c!-- add search gems here --\u003e\n\n\n## Feeds \u0026 Syndication\n\n- [**Feed**](https://github.com/jekyll/jekyll-feed) ★197 (gem: [jekyll-feed](https://rubygems.org/gems/jekyll-feed)) -- a plugin to generate an Atom (RSS-like) feed of your posts   **#Official** **#GitHub Pages**\n- [**Planet**](https://github.com/feedreader/jekyll-planet) ★2 (gem: [jekyll-planet](https://rubygems.org/gems/jekyll-planet)) -- add articles, blogs to your site via web feeds (and planet pluto)\n- [**DEV Community Cross-Posting**](https://github.com/JuanVqz/jekyll-devto) (gem: [jekyll-devto](https://rubygems.org/gems/jekyll-devto)) by Juan Vásquez -- generates a full-content feed for dev.to's RSS import (code blocks without Rouge line numbers and with their language, absolute links) and publishes the imported drafts once each post is live on your site\n\n\n## Bibliography \u0026 Citiations\n\n- [**Scholar**](https://github.com/inukshuk/jekyll-scholar) ★974 (gem: [jekyll-scholar](https://rubygems.org/gems/jekyll-scholar)) by Sylvester Keil  -- extensions for the blogging scholar.\n- [**BibSonomy**](https://github.com/rjoberon/bibsonomy-jekyll) ★5 (gem: [bibsonomy-jekyll](https://rubygems.org/gems/bibsonomy-jekyll)) - generate publication lists from [BibSonomy](https://www.bibsonomy.org/).\n- [**jekyll_quote**](https://github.com/mslinn/jekyll_quote)\n(gem: [jekyll_quote](https://rubygems.org/gems/jekyll_quote))\nby Mike Slinn \u0026ndash; Formats quotes with an optional citation and link in a Jekyll website.\n\n## Tags \u0026 Taggings, Categories \u0026 Categorizations\n\n- [**Archives**](https://github.com/jekyll/jekyll-archives) ★385 (gem: [jekyll-archives](https://rubygems.org/gems/jekyll-archives)) -- archive pages for your tags and categories  **#Official**\n- [**Tagging**](https://github.com/pattex/jekyll-tagging) ★367 (gem: [jekyll-tagging](https://rubygems.org/gems/jekyll-tagging)) -- plugin to automatically generate a tag cloud and tag pages.\n- [**Tagging Related_Posts**](https://github.com/toshimaru/jekyll-tagging-related_posts) ★49 (gem: [jekyll-tagging-related_posts](https://rubygems.org/gems/jekyll-tagging-related_posts)) -- related_posts function based on tags\n\n\n## Pagination\n\n- [**Paginate**](https://github.com/jekyll/jekyll-paginate) ★94 (gem: [jekyll-paginate](https://rubygems.org/gems/jekyll-paginate)) -- pagination generator  **#Official** **#GitHub Pages**\n- [**Paginate V2**](https://github.com/sverrirs/jekyll-paginate-v2) ★455 (gem: [jekyll-paginate-v2](https://rubygems.org/gems/jekyll-paginate-v2)) by Sverrir Sigmundarson et al -- enhanced replacement for the old built-in jekyll-paginate\n- [**Pagination**](https://github.com/prometheus-ev/jekyll-pagination) ★44 (gem: [jekyll-pagination](https://rubygems.org/gems/jekyll-pagination)) -- plugin to extend the pagination generator. **Archived**\n- [**Paginate::Category**](https://github.com/midnightSuyama/jekyll-paginate-category) ★38 (gem: [jekyll-paginate-category](https://rubygems.org/gems/jekyll-paginate-category)) -- pagination generator for category.\n- [**Auto Authors**](https://github.com/gouravkhunger/jekyll-auto-authors) ★7 (gem: [jekyll-auto-authors](https://rubygems.org/gems/jekyll-auto-authors)) -- plugin to auto-generate author pages with pagination!\n\n\n## Figures \u0026 Captions\n\n- [**Figure Tag**](https://github.com/lmullen/jekyll_figure) ★33 (gem: [jekyll_figure](https://rubygems.org/gems/jekyll_figure)) -- Generate figures and captions with links to the figure in a variety of formats\n- [**Figure Tag**](https://github.com/paulrobertlloyd/jekyll-figure) ★47 (gem: [jekyll-figure](https://rubygems.org/gems/jekyll-figure)) -- A liquid tag for Jekyll that generates `\u003cfigure\u003e` elements.\n\n\n## Images \u0026 Pictures\n\n- [**Picture Tag**](https://github.com/rbuchberger/jekyll_picture_tag) ★563 (gem: [jekyll_picture_tag](https://rubygems.org/gems/jekyll_picture_tag)) -- Easy responsive images for Jekyll. Based on the proposed `\u003cpicture\u003e` element, polyfilled with Scott Jehl's Picturefill.\n- [**Responsive Image**](https://github.com/wildlyinaccurate/jekyll-responsive-image) ★312 (gem: [jekyll-responsive_image](https://rubygems.org/gems/jekyll-responsive_image)) -- Responsive images for Jekyll. Automatically resizes images, supports all responsive methods (`\u003cpicture\u003e`, `srcset`, Imager.js, etc), super-flexible configuration.\n- [**Image Encode Tag**](https://github.com/GSI/jekyll_image_encode) ★14 (gem: [jekyll_image_encode](https://rubygems.org/gems/jekyll_image_encode)) -- tag that renders base64 codes of images fetched from the web.\n- [**Cloudinary**](https://github.com/nhoizey/jekyll-cloudinary) ★86 (gem: [jekyll-cloudinary](https://rubygems.org/gems/jekyll-cloudinary)) by Nicolas Hoizey -- tag to use Cloudinary for optimized responsive posts images.\n- [**WebP Image Generator**](https://github.com/sverrirs/jekyll-webp) ★49 (gem: [jekyll-webp](https://rubygems.org/gems/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\n- [**Image Size**](https://github.com/generalui/jekyll-image-size) ★19 (gem: [jekyll-image-size](https://rubygems.org/gems/jekyll-image-size)) - read images and output image-sizes as: opengraph tags, img-tags, css and more - with retina support\n- [**Loading Lazy**](https://github.com/gildesmarais/jekyll-loading-lazy) ★41 (gem: [jekyll-loading-lazy](https://rubygems.org/gems/jekyll-loading-lazy)) -- Adds `loading=\"lazy\"` to lazily load your images and iframes without the need for JavaScript.\n- [**jekyll-imgix**](https://github.com/imgix/jekyll-imgix) ★49 (gem: [jekyll-imgix](https://rubygems.org/gems/jekyll-imgix)) -- Transform, optimize, and intelligently cache your entire image library for fast websites and apps. **Freemium/Commercial**\n- [**jekyll-postfiles**](https://github.com/nhoizey/jekyll-postfiles) ★109 (gem: [jekyll-postfiles](https://rubygems.org/gems/jekyll-postfiles)) -- Ease the management of images (and other files) attached to Markdown blog posts\n- [**jekyll-imgproxy-tag**](https://github.com/jayroh/jekyll-imgproxy-tag) ★0 (gem: [jekyll-imgproxy-tag](https://rubygems.org/gems/jekyll-imgproxy-tag)) -- Generate urls to secure imgproxy images.\n- [**jekyll-responsive-magick**](https://github.com/lawmurray/jekyll-responsive-magick) ★0 (gem: [jekyll-responsive-magick](https://rubygems.org/gems/jekyll-responsive-magick)) -- Responsive images via `srcset`, `width` and `height` filters, automatic image resizing with ImageMagick.\n- [**jekyll_img**](https://github.com/mslinn/jekyll_img)\n(gem: [jekyll_img](https://rubygems.org/gems/jekyll_img))\nby Mike Slinn. \u0026ndash;\nThis versatile plugin embeds responsive images using the \u0026lt;picture\u0026gt; element in documents and pages with alignment options,\nflexible resizing, default styling, overridable styling, an optional caption, and an optional URL.\n- [**jekyll-before-after**](https://github.com/jchance/jekyll-before-after) (gem: [jekyll-before-after](https://rubygems.org/gems/jekyll-before-after)) by Jason Chance -- a tag for drag-to-reveal image comparison sliders with horizontal and vertical orientations, keyboard and pointer support, and no JavaScript dependencies.\n\n\n## Bundled Icons / Images\n\n- [**Octicons**](https://github.com/primer/jekyll-octicons) ★32 (gem: [jekyll-octicons](https://rubygems.org/gems/jekyll-octicons)) -- liquid plugin that makes including svg Octicons simple. **Archived**\n- [**Jekyll PIG**](https://github.com/clnhlzmn/jekyll-pig) ★8 (gem: [jekyll-pig](https://rubygems.org/gems/jekyll-pig)) - Uses ImageMagick and pig.js to create progressive image galleries for Jekyll sites.\n\n\n## Videos \u0026 Screencasts\n\n- [**YouTube**](https://github.com/dommmel/jekyll-youtube) ★79 (gem: [jekyll-youtube](https://rubygems.org/gems/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.\n- [**Asciinema**](https://github.com/mnuessler/jekyll-asciinema) ★37 (gem: [jekyll-asciinema](https://rubygems.org/gems/jekyll-asciinema)) -- a tag for embedding asciicasts recorded with asciinema in your Jekyll pages.\n- [**ReactPlayer**](https://github.com/jessp01/jekyll-react-player) [![Gem Version](https://img.shields.io/gem/dt/jekyll-react-player.svg)](https://rubygems.org/gems/jekyll-react-player) [![Gem Version](https://badge.fury.io/rb/jekyll-react-player.svg)](https://badge.fury.io/rb/jekyll-react-player) -- a tag for embedding react-player supported formats in your Jekyll pages.\n- [**Livid**](https://github.com/jchance/jekyll-livid) (gem: [jekyll-livid](https://rubygems.org/gems/jekyll-livid)) by Jason Chance -- a Liquid tag for embedding Livid-hosted videos with a responsive iframe wrapper and full support for advanced embedding parameters.\n- [**Mux**](https://github.com/jchance/jekyll-mux) (gem: [jekyll-mux](https://rubygems.org/gems/jekyll-mux)) by Jason Chance -- a Liquid tag for embedding Mux-hosted videos with a responsive iframe wrapper and support for Mux Player embed parameters.\n- [**Bunny Stream**](https://github.com/jchance/jekyll-bunny) (gem: [jekyll-bunny](https://rubygems.org/gems/jekyll-bunny)) by Jason Chance -- a Liquid tag for embedding Bunny Stream videos with a responsive iframe wrapper and support for Bunny Stream embed parameters.\n\n\n## Audios \u0026 Podcasts\n\n- [**Octopod**](https://github.com/jekyll-octopod/jekyll-octopod) ★114 (gem: [jekyll-octopod](https://rubygems.org/gems/jekyll-octopod)) by Stefan Haslinger, Arne Eilermann, et al -- a podcast publishing extension. **Archived**\n\n\n## Geocoding \u0026 Maps\n\n- [**Geocode**](https://github.com/bertrandkeller/jekyll-geocode) ★11 (gem: [jekyll-geocode](https://rubygems.org/gems/jekyll-geocode)) by Bertrand Keller -- geo-encode addresses from a datafile for drawing maps\n- [**Maps**](https://github.com/ayastreb/jekyll-maps) ★123 (gem: [jekyll-maps](https://rubygems.org/gems/jekyll-maps)) by Anatoliy Yastreb -- embed maps with filterable locations\n- [**jekyll-map**](https://github.com/jchance/jekyll-map) (gem: [jekyll-map](https://rubygems.org/gems/jekyll-map)) by Jason Chance -- a Liquid tag for embedding static map images from Mapbox or Google Static Maps with no JavaScript required; supports address-string geocoding with build-time caching.\n- [**jekyll-streetview**](https://github.com/jchance/jekyll-streetview) (gem: [jekyll-streetview](https://rubygems.org/gems/jekyll-streetview)) by Jason Chance -- a Liquid tag for embedding Google Street View static images; supports address-string geocoding with build-time caching.\n\n\n## Markup \u0026 Markdown Converters\n\n- [**Pug**](https://jekyll-pug.dougie.io), gem: [jekyll-pug](https://rubygems.org/gems/jekyll-pug) -- convert Pug files into HTML\n- [**Slim**](https://github.com/slim-template/jekyll-slim) ★36, gem: [jekyll-slim](https://rubygems.org/gems/jekyll-slim) -- Slim converter and includes for Jekyll with support for Liquid tags. **Archived**\n- [**AsciiDoc**](https://github.com/asciidoctor/jekyll-asciidoc) ★276, gem: [jekyll-asciidoc](https://rubygems.org/gems/jekyll-asciidoc) -- AsciiDoc convertor for Jekyll using Asciidoctor.\n- [**Commonmark**](https://github.com/pathawks/jekyll-commonmark) ★29, gem: [jekyll-commonmark](https://rubygems.org/gems/jekyll-commonmark) -- Markdown converter that uses libcmark, the reference parser for CommonMark.\n- [**Textile**](https://github.com/jekyll/jekyll-textile-converter) ★15 (gem: [jekyll-textile-converter](https://rubygems.org/gems/jekyll-textile-converter)) -- convert `.textile` files into HTML; also includes the `textilize` Liquid filter  **#Official**\n- [**Jektex**](https://github.com/yagarea/jektex) ★40, gem: [jektex](https://rubygems.org/gems/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.\n- [**Carve**](https://github.com/markup-carve/jekyll-carve) ★1, gem: [jekyll-carve](https://rubygems.org/gems/jekyll-carve) -- convert `.crv` files into HTML; Carve is a post-Markdown markup language\n\n\n## Text Filters\n\n- [**Mentions**](https://github.com/jekyll/jekyll-mentions) ★185 (gem: [jekyll-mentions](https://rubygems.org/gems/jekyll-mentions)) -- @mentionable support for your site  **#Official** **#GitHub Pages**\n- [**Jemoji**](https://github.com/jekyll/jemoji) ★503 (gem: [jemoji](https://rubygems.org/gems/jemoji)) -- GitHub-flavored emoji plugin   **#Official** **#GitHub Pages**\n- [**Time Ago**](https://github.com/markets/jekyll-timeago) ★138 (gem: [jekyll-timeago](https://rubygems.org/gems/jekyll-timeago)) -- Converts a time value to the time ago in words.\n- [**jekyll_time_since**](https://github.com/mslinn/jekyll_time_since)\n(gem: [jekyll_time_since](https://rubygems.org/gems/jekyll_time_since))\nby Mike Slinn \u0026ndash;\nJekyll plugin that provides new Liquid filters called years_since, months_since, days_since, hours_since, minutes_since and seconds_since.\n- [**Pluralize**](https://github.com/bdesham/pluralize) ★28 (gem: [liquid_pluralize](https://rubygems.org/gems/liquid_pluralize)) by Benjamin Esham -- Easily combine a number and a word into a grammatically-correct amount like “1 minute” or “2 minute**s**”.\n- [**Reading Time**](https://github.com/bdesham/reading_time) ★109 (gem: [liquid_reading_time](https://rubygems.org/gems/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.\n- [**TOC (Table of Contents)**](https://github.com/toshimaru/jekyll-toc) ★260  (gem: [jekyll-toc](https://rubygems.org/gems/jekyll-toc))-- A liquid filter plugin for Jekyll which generates a table of contents.\n- [**Smartify**](https://github.com/pathawks/jekyll-smartify) ★9 (gem: [jekyll-smartify](https://rubygems.org/gems/jekyll-smartify)) by Pat Hawks -- SmartyPants filter. Make \u0026quot;quotes\u0026quot; \u0026ldquo;curly\u0026rdquo;. **Archived**\n- [**MD5**](https://github.com/pathawks/liquid-md5) ★13 (gem: [liquid-md5](https://rubygems.org/gems/liquid-md5)) by Pat Hawks  -- Returns an MD5 hash. Helpful for generating Gravatars in templates\n- [**Roman**](https://github.com/paulrobertlloyd/jekyll-roman) ★6  (gem: [jekyll-roman](https://rubygems.org/gems/jekyll-roman)) by Paul Robert Lloyd -- A liquid filter for Jekyll that converts numbers into Roman numerals\n- [**Typogrify**](https://github.com/myles/jekyll-typogrify) ★26 (gem: [jekyll-typogrify](https://rubygems.org/gems/jekyll-typogrify)) by Myles Braithwaite -- A Jekyll plugin that brings the functions of typogruby.\n- [**Email Protect**](https://github.com/vwochnik/jekyll-email-protect) ★75 (gem: [jekyll-email-protect](https://rubygems.org/gems/jekyll-email-protect)) by Vincent Wochnik -- Email protection liquid filter for Jekyll\n- [**Jekyll Liquify**](https://github.com/gemfarmer/jekyll-liquify) ★25 (gem: [jekyll-liquify](https://rubygems.org/gems/jekyll-liquify)) a filter that parses Liquid from front matter\n- [**jekyll_from_to_until**](https://www.mslinn.com/jekyll_plugins/#jekyll_from_to_until)\n(gem: [jekyll_from_to_until](https://rubygems.org/gems/jekyll_from_to_until))\nby Mike Slinn. \u0026ndash;\nProvides filters that return portions of a multiline string:\n  - `from` – returns the portion beginning with the line that satisfies a regular expression to the end of the multiline string.\n  - `to` – returns the portion from the first line to the line that satisfies a regular expression, including the matched line.\n  - `until` – returns the portion from the first line to the line that satisfies a regular expression, excluding the matched line.\n- [**jekyll_basename_dirname**](https://www.mslinn.com/jekyll_plugins/#basename)\n(gem: [jekyll_basename_dirname](https://rubygems.org/gems/jekyll_basename_dirname))\nby Mike Slinn \u0026ndash;\nProvides filters that return portions of a string:\n`basename`, `dirname` and `basename_without_extension`.\n- [**jekyll_begin_end**](https://www.mslinn.com/jekyll_plugins/#begin_end)\n(gem: [jekyll_begin_end](https://rubygems.org/gems/jekyll_begin_end))\nby Mike Slinn \u0026ndash;\nThese filters return portions of a string:\n`begins_with`, `does_not_begin_with`, `ends_with`, `does_not_end_with`, and `append_suffix_if_does_not_start_with`.\n\n\n## Tags\n\n- [**jekyll-better-related**](https://github.com/jchance/jekyll-better-related) (gem: [jekyll-better-related](https://rubygems.org/gems/jekyll-better-related)) by Jason Chance -- Improved related posts generation for Jekyll with relevance scoring.\n- [**Gist**](https://github.com/jekyll/jekyll-gist) ★234 (gem: [jekyll-gist](https://rubygems.org/gems/jekyll-gist)) -- Liquid tag for displaying GitHub Gists   **#Official** **#GitHub Pages**\n- [**Twitter**](https://github.com/rob-murray/jekyll-twitter-plugin) ★225 (gem: [jekyll-twitter-plugin](https://rubygems.org/gems/jekyll-twitter-plugin)) by Robert Murray -- A Liquid tag plugin that renders Tweets from Twitter API. Currently supports the oEmbed API.\n- [**Content Blocks**](https://github.com/rustygeldmacher/jekyll-contentblocks) ★144 (gem: [jekyll-contentblocks](https://rubygems.org/gems/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.\n- [**Beastie Press**](https://github.com/okeeblow/jekyll-beastiepress) ★7  (gem: [jekyll-beastiepress](https://rubygems.org/gems/jekyll-beastiepress)) -- FreeBSD utility tags.\n- [**SWF Object**](https://github.com/sectore/jekyll-swfobject) ★5 (gem: [jekyll-swfobject](https://rubygems.org/gems/jekyll-swfobject)) -- Liquid plugin for embedding Adobe Flash files (.swf) using SWFObject.\n- [**Date Chart**](https://github.com/GSI/jekyll_date_chart) ★9 (gem: [jekyll_date_chart](https://rubygems.org/gems/jekyll_date_chart)) -- Block that renders date line charts based on textile-formatted tables.\n- [**Quick Man**](https://github.com/GSI/jekyll_quick_man) ★7 (gem: [jekyll_quick_man](https://rubygems.org/gems/jekyll_quick_man)) -- Tag that renders pretty links to man page sources on the internet.\n- [**GitHub Sample Tag**](https://github.com/bwillis/jekyll-github-sample) ★57 (gem: [jekyll_github_sample](https://rubygems.org/gems/jekyll_github_sample)) -- A liquid tag to include a sample of a github repo file in your Jekyll site.\n- [**Project Version Tag**](https://github.com/rob-murray/jekyll-version-plugin) ★28 (gem: [jekyll_version_plugin](https://rubygems.org/gems/jekyll_version_plugin)) -- A Liquid tag plugin that renders a version identifier for your Jekyll site sourced from the git repository containing your code.\n- [**Inline Highlight**](https://github.com/bdesham/inline_highlight) ★26 (gem: [jekyll_inline_highlight](https://rubygems.org/gems/jekyll_inline_highlight))  -- a tag for inline syntax highlighting.\n- [**Mermaid**](https://github.com/jasonbellamy/jekyll-mermaid) ★97 (gem: [jekyll-mermaid](https://rubygems.org/gems/jekyll-mermaid)) -- Simplify the creation of mermaid diagrams and flowcharts in your posts and pages.\n- [**Giphy**](https://github.com/vfalanis/jekyll-giphy) ★16 (gem: [jekyll-giphy](https://rubygems.org/gems/jekyll-giphy)) --  a plugin for embedding random giphy GIFs on Jekyll sites according to a user defined topic.\n- [**PlantUML**](https://github.com/yegor256/jekyll-plantuml) ★39 (gem: [jekyll-plantuml](https://rubygems.org/gems/jekyll-plantuml)) -- Tag that renders UML diagrams using [PlantUML](http://plantuml.com/).\n- [**Jekyll oEmbed**](https://github.com/18F/jekyll-oembed) ★8 (gem: [jekyll_oembed](https://rubygems.org/gems/jekyll_oembed)) -- The tag version of [ruby-oembed](https://github.com/ruby-oembed/ruby-oembed), letting you easily get embeddable HTML representations of supported web pages, based on their URLs. **Archived**\n- [**Jekyll PDF Embed**](https://github.com/MihajloNesic/jekyll-pdf-embed) ★35 (gem: [jekyll-pdf-embed](https://rubygems.org/gems/jekyll-pdf-embed)) - Plugin for embedding PDF files to any page or post\n- [**Jekyll Github Chart**](https://github.com/kinduff/jekyll-github-chart) ★4 (gem: [jekyll-github-chart](https://rubygems.org/gems/jekyll-github-chart)) - Plugin to generate an SVG of Github contributions data\n- [**Jekyll Twitch**](https://github.com/chaelcodes/jekyll-twitch) ★6 (gem: [jekyll-twitch](https://rubygems.org/gems/jekyll-twitch)) - Embed Twitch clips, vods, collections, and even broadcasts!\n- [**Jekyll Include**](https://github.com/flant/jekyll_include_plugin) ★12 (gem: [jekyll_include_plugin](https://rubygems.org/gems/jekyll_include_plugin)) - Plugin for including local/remote file contents (or a part of it) into your pages.\n- [**jekyll_flexible_include**](https://www.mslinn.com/jekyll_plugins/#flexibleInclude)\n(gem: [jekyll_flexible_include](https://rubygems.org/gems/jekyll_flexible_include))\nby Mike Slinn. \u003cbr\u003e\nJekyll's built-in include tag does not support including files outside of the `_includes` folder.\nThis plugin supports 4 types of includes:\n  - Relative paths.\n  - Absolute paths, with optional security.\n  - Paths relative to the user home directory, with optional security.\n  - Executable commands, with optional security.\n\n  Paths support environment variables expansion.\nAlso supports highlighting text matching a regex, and dark mode.\n- [**Glossary Tooltip Tag**](https://github.com/erikw/jekyll-glossary_tooltip) ★7 (gem: [jekyll-glossary_tooltip](https://rubygems.org/gems/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.\n- [**jekyll_archive_display**](https://www.mslinn.com/jekyll_plugins/#archiveDisplay)\n(gem: [jekyll_archive_display](https://rubygems.org/gems/jekyll_archive_display))\nby Mike Slinn \u0026ndash;\nJekyll tag plugin that lists the names and contents of each entry in a `tar` file.\n- [**jekyll_download_link**](https://www.mslinn.com/jekyll_plugins/#archive_create)\n(gem: [jekyll_download_link](https://rubygems.org/gems/jekyll_download_link))\nby Mike Slinn \u0026ndash;\nGenerates a link to download a file.\nThe path can be absolute or relative to the website.\n- [**jekyll_href**](https://github.com/mslinn/jekyll_href)\n(gem: [jekyll_href](https://rubygems.org/gems/jekyll_href))\nby Mike Slinn. \u003cbr\u003e\nThis plugin provides a versatile Jekyll tag that generates an a HTML href that defaults to `target=\"_blank\"` and `rel=\"nofollow\"`.\nURLs can contain environment variable references.\nAlso provides a convenient way to generate formatted and clickable URIs.\nFeatures optional automatically-generated soft hyphens.\nThe `href` tags in a page can be summarized by the `href_summary` tag.\n- [**jekyll_outline**](https://github.com/mslinn/jekyll_outline)\n(gem: [jekyll_outline](https://rubygems.org/gems/jekyll_outline))\nby Mike Slinn \u0026ndash;\nOrganizes the index of a collection into chapters.\n- [**jekyll_pre**](https://github.com/mslinn/jekyll_pre)\n(gem: [jekyll_pre](https://rubygems.org/gems/jekyll_pre))\nby Mike Slinn \u0026ndash;\nJekyll tags for HTML \u0026lt;pre/\u0026gt;; copy content button, unselectable text, and incorporating command-line output into documents.\n- [**Jekyll Series Links**](https://github.com/ahalbert/jekyll-series-links), (gem: [jekyll-series-links](https://rubygems.org/search?query=jekyll-series-links)) by Armand Halbert – Liquid tag that allows you to generate a table of contents for multi-part post series.\n- [**jekyll-callout**](https://github.com/jchance/jekyll-callout) (gem: [jekyll-callout](https://rubygems.org/gems/jekyll-callout)) by Jason Chance -- a block tag for rendering styled callout/admonition boxes (note, tip, warning, danger, info) with full Markdown support inside the body.\n- [**jekyll-timeline**](https://github.com/jchance/jekyll-timeline) (gem: [jekyll-timeline](https://rubygems.org/gems/jekyll-timeline)) by Jason Chance -- a block tag for rendering styled vertical timelines with icon support, flexible date formatting, and per-event customization.\n- [**jekyll-color-copy-tag**](https://github.com/jchance/jekyll-color-copy-tag) (gem: [jekyll-color-copy-tag](https://rubygems.org/gems/jekyll-color-copy-tag)) by Jason Chance -- a tag for rendering color swatches with copy-to-clipboard functionality using inline SVG, with no JavaScript dependencies.\n\n\n## Search Engine Optimization (SEO) \u0026 Redirects\n\n- [**Jekyll::NewsSitemap**](https://github.com/skatkov/jekyll-news-sitemap) ★6 (gem: [jekyll-news-sitemap](https://rubygems.org/gems/jekyll-news-sitemap)) -- Jekyll plugin to silently generate Google News Sitemap based on posts  **#Official** **#GitHub Pages** **Archived**\n- [**SEO Tag**](https://github.com/jekyll/jekyll-seo-tag) ★1.4k (gem: [jekyll-seo-tag](https://rubygems.org/gems/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**\n- [**Sitemap Generator**](https://github.com/jekyll/jekyll-sitemap) ★851 (gem: [jekyll-sitemap](https://rubygems.org/gems/jekyll-sitemap)) -- a plugin to silently generate a sitemaps.org compliant sitemap for your site  **#Official** **#GitHub Pages**\n- [**Redirect From**](https://github.com/jekyll/jekyll-redirect-from) ★691 (gem: [jekyll-redirect-from](https://rubygems.org/gems/jekyll-redirect-from)) -- seamlessly specify multiple redirections URLs for your pages and posts **#Official** **#GitHub Pages**\n- [**Google Search Console Verification File Generator**](https://github.com/erikw/jekyll-google_search_console_verification_file) ★3 (gem: [jekyll-google_search_console_verification_file](https://rubygems.org/gems/jekyll-google_search_console_verification_file)) by Erik Westrup - A very simple plugin that will generate a Google Search Console [verification file](https://support.google.com/webmasters/answer/9008080?hl=en) 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 like `googlef47733b3288357e4.html`.\n- [**AI Visible Content**](https://github.com/madmatvey/jekyll-ai-visible-content) (gem: [jekyll-ai-visible-content](https://rubygems.org/gems/jekyll-ai-visible-content)) by madmatvey -- A Jekyll plugin gem that maximizes your site's discoverability by AI search systems (ChatGPT, Perplexity, Google AI Overviews, Claude).\n- [**jekyll-opengraph-image**](https://github.com/jchance/jekyll-opengraph-image) (gem: [jekyll-opengraph-image](https://rubygems.org/gems/jekyll-opengraph-image)) by Jason Chance -- Generate dynamic Open Graph images for Jekyll posts.\n- [**LLMs.txt**](https://github.com/jchance/jekyll-llms-txt) (gem: [jekyll-llms-txt](https://rubygems.org/gems/jekyll-llms-txt)) by Jason Chance -- automatically generates a standards-compliant `/llms.txt` file from your site's posts, collections, and pages so AI language models can efficiently discover your content.\n- [**jekyll-social-share**](https://github.com/jchance/jekyll-social-share) (gem: [jekyll-social-share](https://rubygems.org/gems/jekyll-social-share)) by Jason Chance -- Social sharing buttons for Jekyll with 18 platforms and inline SVG icons, no external dependencies.\n- [**Structured Content**](https://github.com/jchance/jekyll-structured-content) (gem: [jekyll-structured-content](https://rubygems.org/gems/jekyll-structured-content)) by Jason Chance -- emits FAQPage, BlogPosting, WebPage, ProfilePage, and CreativeWork JSON-LD structured data from Jekyll frontmatter without touching theme markup.\n- [**LLMs Output**](https://github.com/abhinavs/jekyll-llms-output) (gem: [jekyll-llms-output](https://rubygems.org/gems/jekyll-llms-output)) by Abhinav Saxena -- generates `/llms.txt` and `/llms-full.txt` for your site, hand-curated via `_data/llms.yml` or auto-generated from your collections.\n- [**Markdown Output**](https://github.com/abhinavs/jekyll-markdown-output) (gem: [jekyll-markdown-output](https://rubygems.org/gems/jekyll-markdown-output)) by Abhinav Saxena -- emits a clean `.md` sibling for every post so AI agents and crawlers can fetch Markdown instead of parsing HTML.\n\n\n## Analytics\n\n- [**Analytics**](https://github.com/hendrik91/jekyll-analytics) ★191 (gem: [jekyll-analytics](https://rubygems.org/gems/jekyll-analytics)) by Hendrik Schneider -- adds webtracking easily to your site; supports multiple trackers like Google Analytics, Piwik, etc.\n\n\n## Comments\n\n- [**FastComments**](https://github.com/FastComments/fastcomments-jekyll) (gem: [fastcomments-jekyll](https://rubygems.org/gems/fastcomments-jekyll)) by FastComments -- Liquid tags for embedding FastComments live commenting, chat, and review widgets.\n- [**jekyll-webmentions-static**](https://github.com/jchance/jekyll-webmentions-static) (gem: [jekyll-webmentions-static](https://rubygems.org/gems/jekyll-webmentions-static)) by Jason Chance -- Static webmention collection and rendering for Jekyll.\n- [**DeskCrew**](https://github.com/webmilmind1/jekyll-deskcrew) (gem: [jekyll-deskcrew](https://rubygems.org/gems/jekyll-deskcrew)) by DeskCrew -- Live chat, AI support chatbot and help center on every page and post, configured from _config.yml; unanswered questions become tickets a human approves.\n\n\n\n## Generators\n\n- [**Emoji**](https://github.com/yihangho/emoji-for-jekyll) ★85, gem: [emoji_for_jekyll](https://rubygems.org/gems/emoji_for_jekyll) -- seamlessly enable emoji for all posts and pages\n- [**Autolink Email**](https://github.com/ivantsepp/jekyll-autolink_email) ★13, gem: [jekyll-autolink_email](https://rubygems.org/gems/jekyll-autolink_email) by Ivan Tse -- Autolink your emails.\n- [**Git Metadata**](https://github.com/ivantsepp/jekyll-git_metadata) ★67, gem: [jekyll-git_metadata](https://rubygems.org/gems/jekyll-git_metadata)  by Ivan Tse -- expose Git metadata for your templates\n- [**Auto Image**](https://github.com/merlos/jekyll-auto-image) ★77, gem: [jekyll-auto-image](https://rubygems.org/gems/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\n- [**Umlauts**](https://github.com/webchef/jekyll-umlauts) ★8, gem: [jekyll-umlauts](https://rubygems.org/gems/jekyll-umlauts)  by Arne Gockeln -- this generator replaces all german umlauts (äöüß) case sensitive with html\n- [**Premonition**](https://github.com/lazee/premonition) ★49, gem: [premonition](https://rubygems.org/gems/premonition)  by Jakob Vad Nielsen -- Converts blockquotes into customizable styled markup blocks, like notes or warnings.\n- [**Jekyll Data Pages Generator**](https://github.com/avillafiorita/jekyll-datapage_gen) ★336, gem: [jekyll-datapage-generator](https://rubygems.org/gems/jekyll-datapage-generator)  by Adolfo Villafiorita -- Allows one to specify data files for which we want to generate one HTML page per record.\n- [**Jekyll SQLite**](https://github.com/captn3m0/jekyll-sqlite/) ★204, (gem: [jekyll-sqlite](https://rubygems.org/gems/jekyll-sqlite)) by Nemo -- use SQLite databases instead of Data Files as a data source.\n\n## Commands \u0026 Switches\n\n- [**Compose**](https://github.com/jekyll/jekyll-compose) ★540 (gem: [jekyll-compose](https://rubygems.org/gems/jekyll-compose)) -- streamline your writing with these commands  **#Official**\n- [**jekyll-gitlab-letsencrypt**](https://github.com/JustinAiken/jekyll-gitlab-letsencrypt) ★60 (gem: [jekyll-gitlab-letsencrypt](https://rubygems.org/gems/jekyll-gitlab-letsencrypt)) -- Automate letsencrypt requests/renewals for gitlab pages\n\n\n## Importers\n\n- [**Importers**](https://github.com/jekyll/jekyll-import) ★456 (gem: [jekyll-import](https://rubygems.org/gems/jekyll-import)) -- The \"import\" command for importing from various blogs   **#Official**\n\n\n## Other\n\n- [**AI Domain Data**](https://github.com/ai-domain-data/jekyll-ai-domain-data) (gem: [jekyll-ai-domain-data](https://rubygems.org/gems/jekyll-ai-domain-data)) -- Automatically generates AI Domain Data Standard domain-profile.json files for AI systems, search engines, and automated agents\n- [**GitHub Metadata**](https://github.com/jekyll/github-metadata) ★215 (gem: [jekyll-github-metadata](https://rubygems.org/gems/jekyll-github-metadata)) -- `site.github`   **#Official** **#GitHub Pages**\n- [**Jekyll Spaceship**](https://github.com/jeffreytse/jekyll-spaceship) ★381 (gem: [jekyll-spaceship](https://rubygems.org/gems/jekyll-spaceship)) -- 🚀 A Jekyll plugin to provide powerful supports for table, mathjax, plantuml, mermaid, emoji, video, youtube, vimeo, dailymotion, audio, spotify, soundcloud, etc.\n- [**Rendering**](https://github.com/prometheus-ev/jekyll-rendering) ★22 (gem: [jekyll-rendering](https://rubygems.org/gems/jekyll-rendering)) -- provide alternative rendering engines. **Archived**\n- [**Contentful**](https://github.com/contentful/jekyll-contentful-data-import) ★94 (gem: [jekyll-contentful-data-import](https://rubygems.org/gems/jekyll-contentful-data-import)) -- Adds a `contentful` sub-command to Jekyll to import data from Contentful.\n- [**Paspagon**](https://github.com/KrzysiekJ/jekyll-paspagon) ★10 (gem: [jekyll-paspagon](https://rubygems.org/gems/jekyll-paspagon)) -- sell your posts in various formats for cryptocurrencies.\n- [**PWA-Workbox**](https://github.com/souldanger/jekyll-pwa-workbox) ★22 (gem: [jekyll-pwa-workbox](https://rubygems.org/gems/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.\n- [**Target Blank**](https://github.com/keithmifsud/jekyll-target-blank) ★82 (gem: [jekyll-target-blank](https://rubygems.org/gems/jekyll-target-blank)) -- Automatically adds `target=\"_blank\"` to external links, can add css-classes and/or various `rel=\"\"` attributes.\n- [**Workbox**](https://github.com/bmeurer/jekyll-workbox-plugin) ★14 (gem: [jekyll-workbox-plugin](https://rubygems.org/gems/jekyll-workbox-plugin)) -- Generate Service Worker using Google Workbox.\n- [**Bootstrap 5 Tabs**](https://github.com/mslinn/jekyll_bootstrap5_tabs) (gem: [jekyll_bootstrap5_tabs](https://rubygems.org/gems/jekyll_bootstrap5_tabs)) \u0026ndash; Enables Bootstrap 5 tabs in Jekyll content.\n- [**jekyll-http-request**](https://github.com/ntsd/jekyll-http-request) (gem: [jekyll-http-request](https://rubygems.org/gems/jekyll-http-request)) by Jirawat Boonkumnerd -- Liquid Filter for HTTP requests, helps get HTTP response data to the page content and cache.\n- [**jekyll-turbo**](https://github.com/maikhel/jekyll-turbo) (gem: [jekyll-turbo](https://rubygems.org/gems/jekyll-turbo)) -- Enable Hotwire Turbo Drive and Turbo Frames on your Jekyll site. 🔥\n\n\n## Assets \u0026 Converters \u0026 Minifiers\n\n- [**Sass Converter**](https://github.com/jekyll/jekyll-sass-converter) ★154 (gem: [jekyll-sass-converter](https://rubygems.org/gems/jekyll-sass-converter)) -- a Sass converter **#Official** **#GitHub Pages**\n- [**Assets 3**](https://github.com/jekyll/jekyll-assets) ★1.1k (gem: [jekyll-assets](https://rubygems.org/gems/jekyll-assets)) -- asset pipelines  **#Official**\n- [**Asset Pipeline Reborn**](https://github.com/kitsched/japr) ★52 (gem: [japr](https://rubygems.org/gems/japr)) - powerful asset pipeline that collects, converts and compresses JavaScript and CSS assets.\n- [**Mini Bundle**](https://github.com/tkareine/jekyll-minibundle) ★67 (gem: [jekyll-minibundle](https://rubygems.org/gems/jekyll-minibundle)) -- asset bundling and cache busting using external minification tool of your choice. No gem dependencies.\n- [**Minifier**](https://github.com/digitalsparky/jekyll-minifier) ★232 (gem: [jekyll-minifier](https://rubygems.org/gems/jekyll-minifier)) -- minifies HTML, XML, CSS, and Javascript both inline and as separate files utilising yui-compressor and htmlcompressor.\n- [**Autoprefixer**](https://github.com/vwochnik/jekyll-autoprefixer) ★64 (gem: [jekyll-autoprefixer](https://rubygems.org/gems/jekyll-autoprefixer))  -- autoprefixer integration for Jekyll\n- [**jekyll_archive_create**](https://www.mslinn.com/jekyll_plugins/#archive_create)\n(gem: [jekyll_archive_create](https://rubygems.org/gems/jekyll_archive_create))\nby Mike Slinn \u0026ndash;\nMakes `tar` and `zip` files based on `_config.yml` entries.\n- [**Compass**](https://github.com/mscharley/jekyll-compass) ★57 (gem: [jekyll-compass](https://rubygems.org/gems/jekyll-compass) -- easily integrate Compass and Sass with your site. **Archived**\n\n\u003c!-- new list; use new category for js only converter- why? why not?? --\u003e\n\n- [**Coffeescript**](https://github.com/jekyll/jekyll-coffeescript) ★44 (gem: [jekyll-coffeescript](https://rubygems.org/gems/jekyll-coffeescript)) -- a CoffeeScript converter  **#Official**\n- [**Opal**](https://github.com/jekyll/jekyll-opal) ★34 (gem: [jekyll-opal](https://rubygems.org/gems/jekyll-opal)) -- convert your Ruby into JavaScript using Opal  **#Official**\n\n\n## Coding Support for Plugins \u0026amp; Liquid Programming\n\n- [**jekyll_all_collections**](https://github.com/mslinn/jekyll_all_collections)\n(gem: [jekyll_all_collections](https://rubygems.org/gems/jekyll_all_collections))\nby Mike Slinn \u0026ndash; If your Jekyll website has several collections,\nthis plugin provides an aggregated collection.\n- [**jekyll_draft**](http://localhost:4001/jekyll/3000-jekyll-plugins.html#draft)\n(gem: [jekyll_draft](https://rubygems.org/gems/jekyll_draft))\nby Mike Slinn \u0026ndash;\nThis plugin’s filters provide a simple means for marking draft pages in development mode.\n- [**jekyll_plugin_logger**](https://github.com/mslinn/jekyll_plugin_logger)\n(gem: [jekyll_plugin_logger](https://rubygems.org/gems/jekyll_plugin_logger))\nby Mike Slinn \u0026ndash;\nColored Jekyll logging for plugins.\n- [**jekyll_plugin_support**](https://github.com/mslinn/jekyll_plugin_support)\n(gem: [jekyll_plugin_support](https://rubygems.org/gems/jekyll_plugin_support))\nby Mike Slinn \u0026ndash;\nRuby gem that facilitates writing and testing Jekyll plugins.\n- [**jekyll_nth**](https://github.com/mslinn/jekyll_nth)\n(gem: [jekyll_nth](https://rubygems.org/gems/jekyll_nth))\nby Mike Slinn \u0026ndash;\nLiquid filter that returns item `n` of a Ruby array, origin 1.\n- [**jekyll_random_hex**](https://github.com/mslinn/jekyll_random_hex)\n(gem: [jekyll_random_hex](https://rubygems.org/gems/jekyll_random_hex))\nby Mike Slinn \u0026ndash;\nOutputs a string of random hexadecimal characters of any length.\n\n\n## Authentication \u0026 Authorization\n\n- [**GitHub OAuth**](https://github.com/benbalter/jekyll-auth) ★821 (gem: [jekyll-auth](https://rubygems.org/gems/jekyll-auth)) by Ben Balter et al -- use GitHub OAuth to serve a protected site to your GitHub org\n\n\n## Admin \u0026 Visual Editors\n\n- [**Admin**](https://github.com/jekyll/jekyll-admin) ★2.6k (gem: [jekyll-admin](https://rubygems.org/gems/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**\n\n- [**Manager**](https://github.com/ashmaroli/jekyll-manager) ★51 (gem: [jekyll-manager](https://rubygems.org/gems/jekyll-manager)) by Ashwin Maroli -- An administrative framework for Jekyll sites, Jekyll Manager is essentially Jekyll Admin repackaged with some alterations.\n\n- [**Notion Fetch**](https://github.com/seroperson/jekyll-fetch-notion) ★4 (gem: [jekyll-fetch-notion](https://rubygems.org/gems/jekyll-fetch-notion)) -- Makes it easy to manage your website content using Notion (git-based approach).\n\n\n## Watch \u0026 Live Reload\n\n- [**Watch**](https://github.com/jekyll/jekyll-watch) ★88 (gem: [jekyll-watch](https://rubygems.org/gems/jekyll-watch)) -- rebuild your site when a file changes with the `--watch` switch **#Official**\n- [**Hawkins**](https://github.com/awood/hawkins) ★57 (gem: [hawkins](https://rubygems.org/gems/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**\n\n\n## Testing \u0026 Proofing\n\n- [**Front Matter Tests**](https://github.com/18F/jekyll_frontmatter_tests) ★28 (gem: [jekyll_frontmatter_tests](https://rubygems.org/gems/jekyll_frontmatter_tests)) by Greg Boone et al -- tests the front matter of posts and other collection documents against a schema. **Archived**\n\n\n## Upload \u0026 Deploy\n\n- [**Jekyll Deploy Action**](https://github.com/jeffreytse/jekyll-deploy-action) ★177 ([jekyll-deploy-action](https://github.com/jeffreytse/jekyll-deploy-action)) -- 🪂  A Github Action to deploy the Jekyll site conveniently for GitHub Pages.\n- [**Deploy**](https://github.com/vwochnik/jekyll-deploy) ★33 (gem: [jekyll-deploy](https://rubygems.org/gems/jekyll-deploy)) -- adds a `deploy` command\n- [**ZMediumToJekyll**](https://github.com/ZhgChgLi/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!\n\n## Debugging\n\n- [**Jekyll Debug**](https://github.com/gemfarmer/jekyll-debug) ★12 (gem: [jekyll-debug](https://rubygems.org/gems/jekyll-debug)) a filter that allows a user to debug liquid filters and tags at runtime\n\n\n## More\n\n\u003e Note: For all jekyll plugin scripts \u0026 pasties, see the [scripts \u0026 pasties](PASTIES.md) page.\n\n\n## Meta\n\n**License**\n\nThe awesome list is dedicated to the public domain. Use it as you please with no restrictions whatsoever.\n\n**Questions? Comments?**\n\nPost them to the [jekyll talk forum](http://talk.jekyllrb.com). Thanks!\n","projects_url":"https://awesome.ecosyste.ms/api/v1/lists/planetjekyll%2Fawesome-jekyll-plugins/projects"}