Plugins New in v0.2.13
Plugins are custom code that Eleventy can import into a project from an external repository.
List of Official Plugins #
All official plugins live under the @11ty npm organization and plugin names will include the @11ty/ prefix.
- Serverless: A plugin to run Eleventy in a serverless function for server side rendering (e.g. Previews in your CMS) and/or in very large sites with On-demand Builders.
- Image: A utility to resize and generate images.
- Render: A plugin to add shortcodes to render an Eleventy template string (or file) inside of another template.
- Cache Assets: A utility to fetch and cache network requests.
- RSS: Generate an Atom feed to allow others to subscribe to your content using a feed reader.
- Syntax Highlighting: Code syntax highlighting using PrismJS without client-side JavaScript.
- Navigation: A plugin for creating hierarchical navigation in Eleventy projects. Supports breadcrumbs too!
- Inclusive Language: A plugin to check for inclusive language in markdown files.
Community Contributed Plugins #
See all eleventy-plugin packages on npm. The rest have been added to this site by our community (and are listed in random order). Add your own!
- eleventy-plugin-reader-bar adds a reader bar as you scroll through the page.  
- eleventy-plugin-add-web-component-definitions will add Web Component definitions automatically, by reading custom tags from HTML pages.  
- @sardine/eleventy-plugin-external-links An 11ty plugin to protect you external links.  
- eleventy-plugin-sharp-respimg will perform build-time image transformations with Sharp and generate responsive image markup using <picture>. 
- @resoc/eleventy-plugin-social-image adds automated social images based on HTML & CSS templates and generated at access time by a Netlify on-demand builder  ph_bernard ph_bernard
- eleventy-plugin-i18n-gettext adds i18n support with Gettext string translation and moment.js date and times localization.  
- eleventy-plugin-footnotes will help rendering accessible footnotes with Liquid.  
- eleventy-plugin-yamldata- will allow you to use a yaml file as local data file.This plugin has been superceded by Eleventy Custom Data Formats.
- eleventy-plugin-lazyimages will add progressive lazy loading to your images.
- @chrisburnell/eleventy-cache-webmentions Cache webmentions using eleventy-cache-assets and make them available to use in collections, templates, pages, etc.  
- eleventy-load brings webpack-like loaders to Eleventy  
- eleventy-plugin-sass will add the ability to use Sass for your stylesheets.
- eleventy-google-fonts A Nunjucks shortcode to optimize Google Fonts. This shortcode download and inline Google Font's CSS.  
- eleventy-plugin-reading-time will generate a tag for the estimated reading time.  
- eleventy-plugin-i18n will add a clever i18nuniversal filter to assist with internationalization and dictionary translations. 
- @tigersway/eleventy-plugin-ancestry Real hierarchical navigation, following folders and documents.  
- eleventy-plugin-img2picture replaces <img>using<picture>with resized and optimized images. 
- eleventy-plugin-recent-changes will generate a collection containing your recent commit history.  
- eleventy-plugin-json-feed adds a Nunjucks shortcode for outputing a JSON feed.  
- eleventy-plugin-youtube-embed automatically embeds YouTube videos based on just their URLs.  
- eleventy-critical-css extracts and inlines critical CSS from your HTML templates  
- eleventy-filter-npm-package-downloads will show you the number of downloads for the given npm package.  
- eleventy-plugin-page-assets Automatically copy images and assets relative to a template to /dist folder and rewrite paths to hashes (Similar to webpack html-loader, or Hexo Post Asset)
- eleventy-plugin-link_to a nunjucks tag to link to another internal content in Eleventy  
- eleventy-plugin-ghost Access the Ghost Content API in Eleventy 👻  
- eleventy-plugin-tailwindcss will add Tailwind CSS support for your website.  dafiulh dafiulh
- @sardine/eleventy-plugin-tinyhtml An 11ty plugin to optimise HTML  
- eleventy-plugin-toc will generate a table of contents from your headings.  
- eleventy-favicon Generates your favicon files and declarations from a single image source  
- @code-blocks/eleventy-plugin Use markdown code blocks to render: charts, graphviz diagrams, MathML, music sheets, HTML tables and highlight code.  
- eleventy-plugin-typeset will make your typography nicer.  
- eleventy-plugin-social-img will generate social share images at build-time and return an image URL.  
- eleventy-plugin-emoji An accessible emoji shortcode and filter for your Eleventy projects  
- eleventy-plugin-plantuml allows processing of Plantuml markdown code blocks into beautiful diagrams  awaragi awaragi
- eleventy-plugin-markdown-shortcode adds a universal shortcode to render markdown.  
- eleventy-plugin-images-responsiver allows authors to use the simple and standard Markdown syntax for images and yet get responsive images in the generated HTML, with srcset and sizes attributes.  
- eleventy-plugin-sharp will add the full power of Sharp's image processing to your templates.  
- eleventy-plugin-cloudinary adds a universal shortcode allowing you to add images from your cloudinary account.  
- eleventy-plugin-sharp-respfigure will perform build-time image transformations with Sharp and generate responsive image markup inside <figure>tags. 
- eleventy-postcss-extension Add CSS processing with PostCSS to your Eleventy build.
- eleventy-plugin-find A utility filter to find array members that match a set of rules, helpful for hoisting data from one template to another.  
- eleventy-plugin-helmet will manage your document head.  
- eleventy-plugin-svg-sprite will compile a directory of SVG files into a single SVG sprite and install shortcodes to embed SVG sprite and SVG content  
- @shawnsandy/npm_info will provide you with package detail for an npm package or GitHub info.
- @fec/eleventy-plugin-remark Process Markdown files with Remark and use Remark plugins to add new features to your Markdown.
- eleventy-plugin-automatic-noopener Automatically add rel='noopener' attributes to unsafe <a>, <area> and <form> elements.  
- eleventy-plugin-social-share-card-generator Automagically creates a share card for social media platforms  
- @vidhill/fortawesome-free-regular-11ty-shortcode Shortcode, allows @fortawesome/free-regular-svg-icons to be embedded as inline svg into templates.
- @sardine/eleventy-plugin-tinysvg An 11ty plugin to minify and optimise SVG  
- @quasibit/eleventy-plugin-schema adds a shortcode for generating JSON-LD structured data.  
- @sardine/eleventy-plugin-tinycss An 11ty plugin to inline and optimise CSS  
- eleventy-plugin-heroicons Shortcodes to add Heroicons to your Eleventy projects  
- eleventy-plugin-git-commit-date to get recent Git commit time of a file, or an Eleventy collection.  
- eleventy-plugin-nesting-toc will generate a nested table of contents from your site's headings.
- @vidhill/fortawesome-brands-11ty-shortcode Shortcode, allows @fortawesome/free-brands-svg-icons to be embedded as inline svg into templates.
- eleventy-plugin-shopify Import your Shopify products, pages, and collections into Eleventy as global data.  
- eleventy-plugin-pwa will generate a Service Worker for you.  
- eleventy-plugin-time-to-read A reading time calculator supporting output in hundreds of languages.  
- @infinity-interactive/eleventy-plugin-injector allows you to run an arbitrary callback at build time or when using --serveor--watch 
- eleventy-plugin-babel Compiles JS with gulp-babel.
- eleventy-xml-plugin adds Liquid filters used for sitemap and RSS/feed file generation.  
- eleventy-plugin-code-style-hooks Syntax highlighter supporting CSS colour previews in all template languages with no client side JS.  
- @orchidjs/eleventy-plugin-ids Add ids to html headings and other elements  
- eleventy-plugin-purgecss will remove unused CSS using PurgeCSS.  
- @mightyplow/eleventy-plugin-cache-buster will add content hashes to JavaScript and CSS resources.  
- eleventy-plugin-mathjax A plugin for rendering math equations using MathJax.
- eleventy-plugin-metagen will generate metadata for Open Graph, Twitter card, generic meta tags and a canonical link.  
- @sardine/eleventy-plugin-code-highlighter An 11ty plugin to style your with Prism.js 
- eleventy-nbsp-filter Filter for Eleventy to replace spaces between words with   characters.  
- eleventy-plugin-meta-generator will render a generator <meta>tag for you. 
- eleventy-plugin-responsive-images adds a shortcode to take care of the srcsetattribute for responsive images via Cloudinary and all otherimgattributes. 
- eleventy-plugin-torchlight Plugin to syntax highlight your code blocks with torchlight.dev.  
- @11tyrocks/eleventy-plugin-emoji-readtime provides a configurable filter to display an estimated read time for Eleventy content, optionally with an emoji visual indicator.  
- eleventy-plugin-respimg will take care of the srcsetattribute for responsive images for you. 
- eleventy-njk-unpkg-inliner Inline npm modules from unpkg in Eleventy Nunjucks templates.  
- @quasibit/eleventy-plugin-sitemap adds a shortcode for generating a sitemap.  
- wikity Wikitext as a templating language, with built-in Eleventy support.  
- Add your own!
Adding a Plugin #
Install the plugin through npm. #
npm install @11ty/eleventy-plugin-rss --saveAdd the plugin to Eleventy in your config file #
Your config file is probably named .eleventy.js.
const pluginRss = require("@11ty/eleventy-plugin-rss");
module.exports = function(eleventyConfig) {
  eleventyConfig.addPlugin(pluginRss);
};Plugin Configuration Options New in v0.5.4 #
Use an optional second argument to addPlugin to customize your plugin’s behavior. These options are specific to the plugin. Please consult the plugin’s documentation (e.g. the eleventy-plugin-syntaxhighlight README) to learn what options are available to you.
const pluginSyntaxHighlight = require("@11ty/eleventy-plugin-syntaxhighlight");
module.exports = function(eleventyConfig) {
  eleventyConfig.addPlugin(pluginSyntaxHighlight, {
    // only install the markdown highlighter
    templateFormats: ["md"],
    init: function({ Prism }) {
        // Add your own custom language to Prism!
    }
  });
};Namespace the plugin additions #
You can namespace parts of your configuration using eleventyConfig.namespace. This will add a string prefix to all filters, tags, helpers, shortcodes (as of 0.7.0), collections, and transforms.
const pluginRss = require("@11ty/eleventy-plugin-rss");
module.exports = function(eleventyConfig) {
  eleventyConfig.namespace("myPrefix_", () => {
    // the rssLastUpdatedDate filter is now myPrefix_rssLastUpdatedDate
    eleventyConfig.addPlugin(pluginRss);
  });
};

