Plugin registry
Metalsmith.js plugin registry Submit yours
- This plugin hasn't been updated in a while. stafyniaksacha
Algolia
A metalsmith plugin for indexing contents on Algolia.
npm i metalsmith-algolia
- fortes
Alias
Create URL aliases for any page.
npm i metalsmith-alias
- tests-always-included
Ancestry
Builds a file tree in metadata so you can determine parents, list children, jump to previous and next siblings.
npm i metalsmith-ancestry
- This plugin hasn't been updated in a while. tests-always-included
Angular $templateCache
Convert AngularJS templates from HTML into JavaScript and preload $templateCache.
npm i metalsmith-angular-templatecache
- This plugin hasn't been updated in a while. hellatan
Archive
Create an archives page organized by date fields.
npm i metalsmith-archive
- chkal
Asciidoctor
Plugin to transform AsciiDoc files to HTML using asciidoctor.js
npm i metalsmith-asciidoctor
- MorganConrad
Assert
Test file objects with assert.
npm i metalsmith-assert
- treygriffith
Assets
Include static assets in your build.
npm i metalsmith-assets
- This plugin hasn't been updated in a while. tests-always-included
Atomizer
Automatically generate Atomic CSS from HTML using Atomizer.
npm i metalsmith-atomizer
- This plugin hasn't been updated in a while. almirfilho
Author
Include authors information in collection files.
npm i metalsmith-author
- lowmess
Auto Collections
Automatically use metalsmith-collections based on the filesystem.
npm i metalsmith-auto-collections
- This plugin hasn't been updated in a while. esundahl
Autoprefixer
Automatically add vendor prefixes to CSS.
npm i metalsmith-autoprefixer
- boushley
Beautifier
Nicely format your html, css or js files.
npm i metalsmith-beautify
- This plugin hasn't been updated in a while. JulesFrancoise
Bibtex
Load and render bibtex bibliographies.
npm i metalsmith-bibtex
- xiwcx
Bitly
Add bitly links to the metadata of each file.
npm i metalsmith-bitly
- fidian
Bookify HTML
Combine multiple HTML files into one. Updates links and images.
npm i metalsmith-bookify-html
- This plugin hasn't been updated in a while. ericgj
Branch
Run separate metalsmith pipelines on selected files.
npm i metalsmith-branch
- davidxmoody
Broken Link Checker
Check for relative and root-relative broken links.
npm i metalsmith-broken-link-checker
- michel-kraemer
Brotli
Compress files with brotli.
npm i metalsmith-brotli
- This plugin hasn't been updated in a while. mdvorscak
Browser Sync
Leverage Browser Sync for an easier development workflow.
npm i metalsmith-browser-sync
- kopa-app
Browserify
Compile Javascript with browserify.
npm i metalsmith-browserify
- metalsmith
Build Date
Add a build date, for things like feeds or sitemaps.
npm i metalsmith-build-date
- This plugin hasn't been updated in a while. chkal
Build Info
Adds metadata about the build environment (build date, user, Node.js version, platform and more)
npm i metalsmith-build-info
- This plugin hasn't been updated in a while. arve0
Changed
Process only files that have changed.
npm i metalsmith-changed
- gchallen
Check All Links
Check all links, both internal and external, in anchors, images, and external page resources.
npm i metalsmith-linkcheck
- aymericbeaumet
Clean CSS
Minify your CSS Files.
npm i metalsmith-clean-css
- This plugin hasn't been updated in a while. srcreigh
Clean Script
Generate a script to cleanup the build directory, if you are adding more than just Metalsmith files.
npm i metalsmith-cleanscript
- carlnordenfelt
Cloudfront
Invalidate Amazon CloudFront cache. Best used in conjunction with the metalsmith-s3 plugin.
npm i metalsmith-cloudfront
- fortes
Code Highlight
Syntax highlighting for code within Markdown and HTML files.
npm i metalsmith-code-highlight
- This plugin hasn't been updated in a while. joaoafrmartins
Coffee
Compile CoffeeScript files to Javascript.
npm i metalsmith-coffee
- rbardini
Collection Metadata
Add metadata to every file in a collection
npm i metalsmith-collection-metadata
- metalsmith
Collections
Group files together, like blog posts. That way you can loop over them to generate an index, or add 'next' and 'previous' links between them.
npm i @metalsmith/collections
- emmercm
Collections Related
Find related files within collections.
npm i metalsmith-collections-related
- aymericbeaumet
Concat
Concatenate your files.
npm i metalsmith-concat
- RobLoach
Concat Convention
Concatenate your files through file conventions, rather than configuration.
npm i metalsmith-concat-convention
- contentful
Contentful
Create static sites with data stored at Contentful.com
npm i contentful-metalsmith
- tomterl
Convert
Convert image files with imagemagick.
npm i metalsmith-convert
- mattwidmann
Copy
Copy and rename files.
npm i metalsmith-copy
- gchallen
Creation and Update Timestamps
Add creation and updated timestamps
npm i metalsmith-updated
- emmercm
CSS Unused
Remove unused CSS rules.
npm i metalsmith-css-unused
- tests-always-included
Data Loader
Load JSON/YAML files into the metadata of files from within your source tree or a models folder.
npm i metalsmith-data-loader
- This plugin hasn't been updated in a while. majodev
Data Markdown
Use markdown content within html tags via data-markdown attribute.
npm i metalsmith-data-markdown
- This plugin hasn't been updated in a while. sanx
Date in filename
Enrich file metadata with dates present in source filenames.
npm i metalsmith-date-in-filename
- This plugin hasn't been updated in a while. hellatan
Date Formatter
Format dates defined in the YAML Front Matter
npm i metalsmith-date-formatter
- leviwheatcroft
Debug UI
Render a nice browser based ui to inspect build files & meta.
npm i metalsmith-debug-ui
- metalsmith
Default Values
Sets default values to frontmatter metadata if they don't exist.
npm i @metalsmith/default-values
- aymericbeaumet
Define
Manually define values in the metadata.
npm i metalsmith-define
- timdp
Discover Helpers
Discovers your template helpers and registers them with Handlebars.
npm i metalsmith-discover-helpers
- timdp
Discover Partials
Discovers your template partials and registers them with Handlebars.
npm i metalsmith-discover-partials
- vitaliy-bobrov
Disqus
Adds Disqus comments widget and counter.
npm i metalsmith-disqus
- This plugin hasn't been updated in a while. lucawyss
Dither
Make a dithered copy of images.
npm i metalsmith-dither
- metalsmith
Drafts
Hide any files marked as drafts.
npm i @metalsmith/drafts
- This plugin hasn't been updated in a while. axyz
Duo
Compile assets with Duo.
npm i metalsmith-duo
- This plugin hasn't been updated in a while. wilsaj
Each
Easily apply a function to each file or filename.
npm i metalsmith-each
- ubenzer
Eslint
Eslint your JavaScript files.
npm i metalsmith-eslint
- This plugin hasn't been updated in a while. tylersticka
Elevate
Bump files up one or more directories.
npm i metalsmith-elevate
- This plugin hasn't been updated in a while. jscheel
Encode HTML
Easily encode HTML entities in any HTML file by surrounding target code in triple backticks.
npm i metalsmith-encode-html
- kalamuna
Env
Register all environment variables as metadata.
npm i metalsmith-env
- This plugin hasn't been updated in a while. selfVSmind
Etsy
Incorporate your active Etsy shop data into a static website.
npm i metalsmith-etsy
- This plugin hasn't been updated in a while. patm2013
Excel-Markdown
Query Excel files with SQL and convert to Markdown tables.
npm i metalsmith-excel-markdown
- This plugin hasn't been updated in a while. Treri
Except
Omit attributes from each file's metadata.
npm i metalsmith-except
- metalsmith
Excerpts
Extract the first paragraph from the beginning of any HTML file.
npm i @metalsmith/excerpts
- chiefy
Express
Serve static files with express, built-in support for liveReload.
npm i metalsmith-express
- arccoza
Favicons
A Metalsmith favicons generator.
npm i metalsmith-favicons
- hurrymaplelad
Feed
Generate an RSS feed for a collection.
npm i metalsmith-feed
- This plugin hasn't been updated in a while. almirfilho
Feed Atom
Generate Atom feed for a collection.
npm i metalsmith-feed-atom
- dpobel
File Metadata
Add metadata on files based on a pattern.
npm i metalsmith-filemetadata
- This plugin hasn't been updated in a while. yeojz
File Transform
Allows quick manipulation of the file object.
npm i metalsmith-transform
- christophercliff
Fingerprint
Insert a hash of the content into the file name.
npm i metalsmith-fingerprint
- This plugin hasn't been updated in a while. chadly
Flatten
Flatten a directory hierarchy.
npm i metalsmith-flatten
- djfwilkinson
Frontmatter File Loader
Iterate through the properties of a frontmatter object and for each property replace the value with the string contents of a utf-8 encoded file resolved using the original value as a file path.
npm i metalsmith-frontmatter-file-loader
- djfwilkinson
Frontmatter Renderer
Iterate through the properties of a frontmatter object and for each property render the value using a jstransformer and replace it.
npm i metalsmith-frontmatter-renderer
- This plugin hasn't been updated in a while. hoetmaaiers
Project images
Scan images in specified subfolder and add it to metadata.
npm i metalsmith-project-images
- clemsos
Gallery
Scan for images in folders and add them to metadata.
npm i metalsmith-scan-images
- kalamuna
Gather Content
Generate sites from Gather Content projects
npm i metalsmith-gathercontent
- This plugin hasn't been updated in a while. expalmer
Gist
Lets you get gists from Github Gist
npm i metalsmith-gist
- This plugin hasn't been updated in a while. cusxio
GitHub Markdown
Convert markdown with Github Markdown API.
npm i metalsmith-github-markdown
- emmercm
GitHub Profile
Fetch GitHub profile information.
npm i metalsmith-github-profile
- This plugin hasn't been updated in a while. doodzik
Google Analytics
Adds the Google Analytics script to your html files
npm i metalsmith-google-analytics
- This plugin hasn't been updated in a while. leviwheatcroft
Google Drive
Scrape files from Google Drive.
npm i metalsmith-google-drive
- This plugin hasn't been updated in a while. kalamuna
Google Sheets
Pull in data from a google spreadsheet using the API.
npm i metalsmith-google-sheets
- This plugin hasn't been updated in a while. stevenschobert
Gravatar
Pull in images from Gravatar.com.
npm i metalsmith-gravatar
groff
Call the groff document formatting system on input files
npm i metalsmith-groff
- This plugin hasn't been updated in a while. jelz
gulp-metalsmith
A lightweight plugin that incorporates Metalsmith builds into gulp pipelines.
npm i gulp-metalsmith
- pjeby
Gulpsmith
Use Gulp plugins in Metalsmith, or Metalsmith as a Gulp plugin. Useful for uploading files, reading less than an entire directory tree, using external front matter, etc.
npm i gulpsmith
- ludovicofischer
Gzip
Compress files with gzip.
npm i metalsmith-gzip
- fidian
Handlebars Contents
Process Mustache syntax in file contents using Handlebars. Safe for live reloading.
npm i metalsmith-handlebars-contents
- fidian
Handlebars Layouts
Wrap files in layouts, leveraging Mustache syntax via Handlebars. Safe for live reloading.
npm i metalsmith-handlebars-layouts
- ahdiaz
Handlebars in Markdown
Process Handlebars in Markdown files.
npm i metalsmith-hbt-md
- webketje
Handlebars X
Full Handlebars integration. Global/local partials, in-place & layout compilation, and maximum flexibility.
npm i metalsmith-handlebars-x
- metalsmith
Headings
Extract headings from HTML files and attach them to the file's metadata. Useful for automatically building navigation for a document.
npm i metalsmith-headings
- majodev
Headings Identifier
Add an id and anchor to all headings on a page. Ideal for permalinks.
npm i metalsmith-headings-identifier
- benwilhelm
Hooks
Add page-specific hooks (like mini-plugins) to your build
npm i metalsmith-hooks
- emmercm
htaccess
Create an Apache HTTP Server .htaccess configuration file.
npm i metalsmith-htaccess
- gchallen
HTML5 Format Checker
Use html-validator to validate your HTML.
npm i metalsmith-formatcheck
- emmercm
HTML Glob
Apply glob patterns within HTML.
npm i metalsmith-html-glob
- emmercm
HTML Linter
Lint HTML for syntax and semantics.
npm i metalsmith-html-linter
- whymarrh
HTML Minifier
Minify your HTML files.
npm i metalsmith-html-minifier
- emmercm
HTML Relative
Convert to relative paths within HTML.
npm i metalsmith-html-relative
- emmercm
HTML Subresource Integrity
Add subresource integrity attributes to HTML.
npm i metalsmith-html-sri
- This plugin hasn't been updated in a while. hoosteeno
HTML Tidy
Tidy your HTML files to make your source beautiful.
npm i metalsmith-html-tidy
- emmercm
HTML Unused
Exclude resources that aren't referenced in HTML files.
npm i metalsmith-html-unused
- saneef
Hyphenate
Use Hypher hyphenation engine in your HTMLs.
npm i metalsmith-hyphenate
- This plugin hasn't been updated in a while. doup
i18n
Translate your strings.
npm i metalsmith-i18n
- macprog-guy
i18next
Easily create multiple localised branches of your site using the excellent i18next library.
npm i metalsmith-i18next
- deltamualpha
If
Run plugins in the build sequence conditionally.
npm i metalsmith-if
- emmercm
Reading Time
Estimate pages' reading times.
npm i metalsmith-reading-time
- metalsmith
Remove
A Metalsmith plugin to remove files from the build
npm i @metalsmith/remove
- tonygustafsson
Image Aspect Ratio
A plugin for adding image aspect ratios, fixing Cumulative Layout Shifts.
npm i metalsmith-image-aspect-ratio
- ahmadnassri
Imagemin
A Metalsmith plugin to minify images using imagemin.
npm i metalsmith-imagemin
- This plugin hasn't been updated in a while. kenhoff
Image Resizer
An image resizing plugin for Metalsmith. Not dependent on imagemagick/graphicsmagick!
npm i metalsmith-image-resizer
- metalsmith
In-place
In-place templating, render templates in your source files.
npm i metalsmith-in-place
- This plugin hasn't been updated in a while. treygriffith
Include
Make other source files available as properties.
npm i metalsmith-include
- This plugin hasn't been updated in a while. mintbridge
Include Content
Allows content to be included (nested) within other content by including the file path
npm i metalsmith-include-content
- emmercm
Include Files
Include external files in your build.
npm i metalsmith-include-files
- davidtimmons
Inject Metadata
Inject metadata constants into source file data.
npm i metalsmith-inject-metadata
- borisovg
Inline CSS
Inline CSS files, including those generated by preprocessors
npm i metalsmith-inline-css
- This plugin hasn't been updated in a while. alexnewmannn
Inline Source
Inlines static assets like SVG, Javascript and CSS
npm i metalsmith-inline-source
- This plugin hasn't been updated in a while. meatysolutions
Inline SVG
Inlines SVG images into your HTML files
npm i metalsmith-inline-svg
- MorganConrad
Inspect
Print/inspect the file objects, mainly for debugging.
npm i metalsmith-inspect
- metalsmith
Js-bundle
Bundle your JS using esbuild
npm i @metalsmith/js-bundle
- This plugin hasn't been updated in a while. lambtron
Hover
Display image and gif links on mouse hover.
npm i metalsmith-hover
- colophonemes
Icons
Automatically generate icon font files using Fontello.
npm i metalsmith-icons
- This plugin hasn't been updated in a while. axa-ch
Incremental
Faster incremental builds for Metalsmith.
npm i metalsmith-incremental
- dsoulayrol
Index
A plugin to create directory indexes.
npm i metalsmith-index
- stafyniaksacha
JavaScript packer
JavaScript packer/minifier/uglifier for Metalsmith
npm i metalsmith-js-packer
- fortes
Jekyll Dates
Automatically extract dates from Jekyll-style filenames.
npm i metalsmith-jekyll-dates
- manheim
jQuery
Manipulate your HTML files with jQuery.
npm i metalsmith-jquery
- This plugin hasn't been updated in a while. antiBaconMachine
JSON
Parse .json files and make their properties available to downstream plugins.
npm i metalsmith-json
- woodyrew
JSON to files
Creates files from the properties within .json files with filename patterns and permalinks.
npm i metalsmith-json-to-files
- boeckMt
JSON insteadof Markdown
Use JSON files in addition to markdown files to write your content
npm i @boeckmt/metalsmith-json-insteadof-md
- RobLoach
JSTransformer
Compile content with any JSTransformer.
npm i metalsmith-jstransformer
- This plugin hasn't been updated in a while. RobLoach
JSTransformer Partials
Provide `partial` helpers with any JSTransformer.
npm i metalsmith-jstransformer-partials
- This plugin hasn't been updated in a while. arccoza
Just A Moment
A Metalsmith plugin to auto convert dates to moment objects.
npm i metalsmith-just-a-moment
- MorganConrad
Keymaster
Flexible, powerful manipulation of key-value pairs in file metadata.
npm i metalsmith-keymaster
- metalsmith
Layouts
Apply layouts to your source files.
npm i @metalsmith/layouts
- This plugin hasn't been updated in a while. christophercliff
LESS
Convert LESS files to CSS.
npm i metalsmith-less
- emmercm
Link Checker
Check for local and remote broken links.
npm i metalsmith-link-checker
- This plugin hasn't been updated in a while. connected-world-services
Link Globs
Instead of manually adding links to files, repeat your script, link, img and a tags by using globs.
npm i metalsmith-link-globs
- This plugin hasn't been updated in a while. CMClay
Lunr Search
Implement Lunr.js client-side search engine.
npm i metalsmith-lunr
- metalsmith
Markdown
Convert Markdown files to HTML.
npm i @metalsmith/markdown
- mayo
Markdown-it
Convert Markdown files to HTML using markdown-it.
npm i metalsmith-markdownit
- wernerglinka
Markdown-Partials
Enables the use of Markdown partials, e.g. Markdown fragments can be inserted into the contents section of a page markdown file via an include marker.
npm i metalsmith-markdown-partials
- attentif
Markdown-Remarkable
Convert Markdown files to HTML using Remarkable.
npm i metalsmith-markdown-remarkable
- This plugin hasn't been updated in a while. doup
Mingo
Wrapper for the Mingo library which allows to make MongoDB style queries.
npm i metalsmith-mingo
- kopa-app
Mithril
Convert mithril.js Javascript files to html.
npm i metalsmith-mithril
- This plugin hasn't been updated in a while. doup
Multi Language
Adds multi-language support to your projects.
npm i metalsmith-multi-language
- This plugin hasn't been updated in a while. mgnt
MultiMarkdown
Convert Markdown files to HTML using MultiMarkdown-4 syntax.
npm i metalsmith-multimarkdown
- emmercm
Mermaid
Render Mermaid diagrams in files.
npm i metalsmith-mermaid
- metalsmith
Metadata
Load metadata from JSON, YAML, or TOML files.
npm i @metalsmith/metadata
- fephil
Metadata Directory
Add a directory of JSON files for use in templates and pages.
npm i metalsmith-metadata-directory
- This plugin hasn't been updated in a while. Ajedi32
Metafiles
Read file metadata from separate files (as an alternative to frontmatter).
npm i metalsmith-metafiles
- weswigham
Metallic
Highlight code in markdown files with highlight.js.
npm i metalsmith-metallic
- This plugin hasn't been updated in a while. Ajedi32
Metalsmith Matters
Read file metadata from frontmatter.
npm i metalsmith-matters
- emmercm
Metalsmith Tracer
Automatically trace and measure Metalsmith build time.
npm i metalsmith-tracer
- dpobel
Moment
Converts file metadata to moment.js object
npm i metalsmith-moment
- This plugin hasn't been updated in a while. kfranqueiro
More
Stores the content before the "more" comment tag in HTML files.
npm i metalsmith-more
- This plugin hasn't been updated in a while. carlnordenfelt
Move/Remove
Moves and/or removes files in the file structure.
npm i metalsmith-move-remove
- This plugin hasn't been updated in a while. tests-always-included
Mustache Metadata
Modifies metadata to make it more useful in Mustache templates. Adds easy conditions and links to parent objects.
npm i metalsmith-mustache-metadata
- kasperisager
Myth
Preprocess CSS files with Myth.
npm i metalsmith-myth
- mcdonnelldean
Move Up
Move whole directories and their contents up one or more levels.
npm i metalsmith-move-up
- tonygustafsson
Native Lazy Loading
A plugin that adds browser native lazy loading to images.
npm i metalsmith-native-lazy-loading
- This plugin hasn't been updated in a while. unstoppablecarl
Navigation
Generate navigation based on file trees
npm i metalsmith-navigation
- This plugin hasn't been updated in a while. firesideguru
nested
A metalsmith plugin for nesting your layouts when using the handlebars engine.
npm i metalsmith-nested
- This plugin hasn't been updated in a while. fmmfonseca
ng-annotate
Add, remove and rebuild AngularJS dependency injection annotations.
npm i metalsmith-ng-annotate
- altano
npm
Include npm modules in your globals
npm i metalsmith-npm
- This plugin hasn't been updated in a while. Treri
Only
Filter out attributes from each file's metadata.
npm i metalsmith-only
- This plugin hasn't been updated in a while. astralfrontier
Open Graph
Add Facebook Open Graph meta tags to HTML.
npm i metalsmith-open-graph
- This plugin hasn't been updated in a while. AnthonyAstige
OptiPng
Metalsmith wrapper for optipng - to optimize and make your png images smaller
npm i metalsmith-optipng
- This plugin hasn't been updated in a while. crshd
org
Convert org-mode files to HTML.
npm i metalsmith-org
- This plugin hasn't been updated in a while.
PackageJSON
Parses the contents of package.json and makes them available in a global 'pkg'
npm i
- ahmadnassri
Paths
adds file path values (dirname, extname, basename, path) to metadata
npm i metalsmith-paths
- anatoo
Partial
Provide 'partial' helper to include other files.
npm i metalsmith-partial
- This plugin hasn't been updated in a while. RobinThrift
Paginate
A simple plugin that uses metalsmith-collections to create a paginated collection.
npm i metalsmith-paginate
- blakeembrey
Pagination
Paginate arrays and collections into multiple files.
npm i metalsmith-pagination
- arve0
Pandoc
Convert files with pandoc.
npm i metalsmith-pandoc
- This plugin hasn't been updated in a while. jjclark1982
PDF
Convert HTML files to PDF using wkhtmltopdf
npm i metalsmith-pdf
- dpobel
PDFize
Export HTML files to PDF using Headless Chrome
npm i metalsmith-pdfize
- This plugin hasn't been updated in a while. hellatan
Page Title
Add a global site title to every `<title>` tag.
npm i metalsmith-page-titles
- scurker
Perma
An alternative to metalsmith-permalinks allowing for custom permalinks and overrides.
npm i metalsmith-perma
- metalsmith
Permalinks
Apply custom permalinks and rename files to be nested properly for static sites, basically converting `about.html` into `about/index.html`.
npm i @metalsmith/permalinks
- This plugin hasn't been updated in a while. AnthonyAstige
Picset Generate
Gives responsive image resolution choices. Generates image sets for use with the Picset Handlebars Helper plugin
npm i metalsmith-picset-generate
- This plugin hasn't been updated in a while. AnthonyAstige
Picset Handlebars Helper
Uses generated responsive image resolutions. Those generated by the Picset Generate plugin display in browser via a `<picture>` element
npm i metalsmith-picset-handlebars-helper
- This plugin hasn't been updated in a while. fdoxyz
Polyglot
Simple mirror translations for blog-like entries.
npm i metalsmith-polyglot
- arccoza
PostCSS
A Metalsmith plugin for PostCSS.
npm i metalsmith-with-postcss
- metalsmith
PostCSS
Send your (S)CSS through any PostCSS plugins.
npm i @metalsmith/postcss
- This plugin hasn't been updated in a while. mattly
Placeholder
Stub content-less files from JSON/Yaml metadata files
npm i metalsmith-placeholder
- davidtimmons
Preview
Generate custom text previews saved to file metadata.
npm i metalsmith-preview
- Availity
Prism Syntax Highlighting
Syntax highlighting for HTML templates using Prism.js.
npm i metalsmith-prism
- This plugin hasn't been updated in a while. mbanting
Prismic
Create static sites with data stored at Prismic.io
npm i metalsmith-prismic
- AshleyWright
Projects
Adds metadata for projects (think portfolio content) from GitHub or filesystem (through collections) that can be looped over for creating a portfolio of work.
npm i metalsmith-projects
- This plugin hasn't been updated in a while. segment-boneyard
Prompt
Prompt the user for series of answers in the command line and add them to the global metadata.
npm i metalsmith-prompt
- This plugin hasn't been updated in a while. almirfilho
Propdown
A metalsmith plugin to convert a property value from markdown to HTML.
npm i metalsmith-propdown
- mikestopcontinues
Publish
Declare files as draft, private, or future-dated and use callback to automate rebuilds.
npm i metalsmith-publish
- ahmadnassri
Pug (Jade)
Convert Pug (previously Jade) files to HTML.
npm i metalsmith-pug
- alex-ketch
PurifyCSS
Remove unused CSS.
npm i metalsmith-purifycss
- yeojz
React Templates
Render any file using React JS based component templates
npm i metalsmith-react-templates
- richardstevens
React tpl
Use React in metalsmith as a templating language
npm i metalsmith-react-tpl
- aymericbeaumet
Redirect
A simple plugin to create client-side HTTP redirections.
npm i metalsmith-redirect
- mrajo
Regex Replace
Performs search and replace in text source files
npm i metalsmith-regex-replace
- This plugin hasn't been updated in a while. tests-always-included
Relative Links
Adds a link function into your metadata so templates can link resources easier.
npm i metalsmith-relative-links
- alex-ketch
Renamer
Rename files matching a given pattern.
npm i metalsmith-renamer
- This plugin hasn't been updated in a while. Treri
Replace
Replace attribute values in each file's metadata.
npm i metalsmith-replace
- This plugin hasn't been updated in a while. dennisschaaf
Rework
Use rework CSS processor to rework your files.
npm i metalsmith-rework
- This plugin hasn't been updated in a while. inca
Rho
Convert Rho files to HTML.
npm i metalsmith-rho
- ahmadnassri
Request
Grab content from the web and expose the results to metadata.
npm i metalsmith-request
- ahmadnassri
Requests
Add request responses to file contents/metadata and metalsmith metadata.
npm i @metalsmith/requests
- attila
Rollup
Bundle JavaScript with Rollup.
npm i metalsmith-rollup
- This plugin hasn't been updated in a while. radiovisual
Root Path
Auto-calculate the relative path to your root directory in template urls.
npm i metalsmith-rootpath
- mwishek
S3
Copy, read, and write files on Amazon S3.
npm i metalsmith-s3
- metalsmith
Sass
Convert Sass files to CSS.
npm i @metalsmith/sass
- stevenschobert
Sass
Convert Sass files to CSS.
npm i metalsmith-sass
- This plugin hasn't been updated in a while. csmets
Sass lint
Stylelint your Sass files.
npm i metalsmith-sass-lint
- This plugin hasn't been updated in a while. jocelynlecomte
Series
Groups files into series for easier navigation
npm i metalsmith-series
- This plugin hasn't been updated in a while. mayo
Serve
Simple http server for development. Best used with metalsmith-watch.
npm i metalsmith-serve
- axe312ger
Sharp
Use the powerful sharp library to resize and manipulate your images.
npm i metalsmith-sharp
- This plugin hasn't been updated in a while. ericgj
Shortcodes
Render wordpress-esque shortcodes via templates.
npm i metalsmith-shortcodes
- csmets
Shortcode Parser
A metalsmith wrapper for shortcode-parser.
npm i metalsmith-shortcode-parser
- ExtraHop
Sitemap
A metalsmith plugin for generating a sitemap.xml file.
npm i metalsmith-sitemap
- This plugin hasn't been updated in a while. petermorlion
Skeleton Gallery
Generate an image gallery, using the Skeleton CSS framework.
npm i metalsmith-skeleton-gallery
- This plugin hasn't been updated in a while. nsonnad
Slug
Add a slug property to file metadata, based on a another property.
npm i metalsmith-slug
- This plugin hasn't been updated in a while. blakeembrey
Snippet
Extract snippets from files, limited by a maximum number of characters.
npm i metalsmith-snippet
- gchallen
Spell Checking
Spell check your site.
npm i metalsmith-spellcheck
- This plugin hasn't been updated in a while. TheHydroImpulse
Static
Copy public assets into the build directory.
npm i metalsmith-static
- stafyniaksacha
Stylesheet Packer
CSS packer/minifier/optimizer for Metalsmith.
npm i metalsmith-css-packer
- This plugin hasn't been updated in a while. esundahl
Stylus
Convert Stylus files to CSS.
npm i metalsmith-stylus
- This plugin hasn't been updated in a while. moshen
Subresource Integrity
Generate integrity hashes for site resources.
npm i metalsmith-subresource-integrity
- This plugin hasn't been updated in a while. connected-world-services
Sugar
Use a shorthand when including plugins and avoid calling require() on each individual module.
npm i metalsmith-sugar
- This plugin hasn't been updated in a while. jeffjewiss
SUITCSS
Preprocess CSS files with SUITCSS.
npm i metalsmith-suitcss
- This plugin hasn't been updated in a while. madeofpeople
Swig Helpers
Useful bits for those of us using swig
npm i metalsmith-swig-helpers
- This plugin hasn't been updated in a while. 2xaa
Symlink
Create Symlinks for large files or directories.
npm i metalsmith-symlink
- metalsmith
Table of Contents
Auto-generate table of contents from headings
npm i @metalsmith/table-of-contents
- totocaster
Tags
Generate tag listing pages based on tags provided in pages.
npm i metalsmith-tags
- webketje
Taxonomy
Organize files into taxonomies in global metadata and auto-generate taxonomy pages (tags, post types, products)
npm i metalsmith-taxonomy
- This plugin hasn't been updated in a while. deltamualpha
Timer
Clock how long it takes for plugins in your build sequence to run.
npm i metalsmith-timer
- This plugin hasn't been updated in a while. danielhusar
Timestamp
Add timestamp comment to html files
npm i metalsmith-timestamp
- AtlasJan
Textile
Convert Textile to HTML
npm i metalsmith-textile
- hellotoby
To JSON
Generates JSON files from markdown, preserving filenames and frontmatter.
npm i metalsmith-to-json
- scurker
Tweet Embed
Converts Twitter status URLS to embedded Twitter statuses
npm i metalsmith-tweet-embed
- PKuebler
Twig
Renders all files with the Twig template engine.
npm i metalsmith-twig
- vitaliy-bobrov
Twitter Card
Adds Twitter Card meta tags to enable Twitter share rich snippets.
npm i metalsmith-twitter-card
- This plugin hasn't been updated in a while. algenon
Typography
Enhance typography in HTML files.
npm i metalsmith-typography
- ksmithut
Uglify
Uglifies/minifies your JavaScript files
npm i metalsmith-uglify
- This plugin hasn't been updated in a while. colophonemes
UnCSS
Remove unused CSS rules with UnCSS
npm i metalsmith-uncss
- This plugin hasn't been updated in a while. alisdair
Unlisted
Remove pages from collections, but still allow them to build
npm i metalsmith-unlisted
- mikestopcontinues
Validate
Easily validate file metadata, checking existence, type, and pattern.
npm i metalsmith-validate
- emmercm
Vega
Render Vega and Vega-Lite visualizations in files.
npm i metalsmith-vega
- This plugin hasn't been updated in a while. FWeinb
Watch
Watching for file changes and trigger rebuilds.
npm i metalsmith-watch
- This plugin hasn't been updated in a while. christophercliff
Webpack
Bundle CommonJS, AMD and ES6 modules.
npm i metalsmith-webpack
- leviwheatcroft
Webpack 2
Webpack 2, with cache.
npm i metalsmith-webpack-2
- majodev
Word Count
Compute wordcount and average reading time.
npm i metalsmith-word-count
- Waxolunist
Write Metadata
Write the metadata excerpted from the files to the filesystem as json files.
npm i metalsmith-writemetadata
- blainsmith
XO
XO lint your JavaScript files.
npm i metalsmith-xo
- juanpicado
YouTube
A Metalsmith plugin that lets you embed YouTube Videos.
npm i metalsmith-youtube
Submit your plugin
Plugins in the official registry get higher visibility than those only published on Github or NPM, and they must pass a brief quality review. Guidelines for plugins to be accepted in the registry are:
- The package is published in the NPM registry
- The package includes at least 1 test
- The package provides functionality that is different from already registered plugins. Why? — because we want to encourage collaboration and reduce the amount of confusion for new metalsmith users.
Edit the plugins.json file and create a pull request to get your plugin listed. Plugins need to be added at the correct alphabetical position by name
: if your plugin’s name is “b”, it should come right after the plugin named “a”.
Add a plugin object to the list with the following properties:
{
"name": "My plugin",
"icon": "icon-name",
"repository": "https://github.com/username/metalsmith-myplugin",
"description": "Metalsmith plugin for doing something.",
"npm": "@myscope/metalsmith-myplugin"
},
where:
name
- should match the NPM package or repository name, but can be in title case & with spacesicon
- one of the Metalsmith icons, preferably matching what the plugin doesrepository
- url to the repository of the plugin, e.g.https://github.com/username/metalsmith-myplugin
description
- a short description for the plugin, ideally matchingpackage.json
or Github repository descriptionnpm
- optional, to specify a name different thanname
, e.g. for scoped NPM packages (@<myscope>/<metalsmith-myplugin>)