Plugin registry
254 registered plugins Submit yours
This plugin hasn't been updated in a while.
stafyniaksachaAlgolia
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-includedAngular $templateCache
Convert AngularJS templates from HTML into JavaScript and preload $templateCache.
npm i metalsmith-angular-templatecacheThis plugin hasn't been updated in a while.
hellatanArchive
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-includedAtomizer
Automatically generate Atomic CSS from HTML using Atomizer.
npm i metalsmith-atomizerThis plugin hasn't been updated in a while.
almirfilhoAuthor
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.
esundahlAutoprefixer
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.
JulesFrancoiseBibtex
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.
ericgjBranch
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.
mdvorscakBrowser 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.
chkalBuild Info
Adds metadata about the build environment (build date, user, Node.js version, platform and more)
npm i metalsmith-build-infoThis plugin hasn't been updated in a while.
arve0Changed
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.
srcreighClean 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.
joaoafrmartinsCoffee
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.
majodevData Markdown
Use markdown content within html tags via data-markdown attribute.
npm i metalsmith-data-markdownThis plugin hasn't been updated in a while.
sanxDate in filename
Enrich file metadata with dates present in source filenames.
npm i metalsmith-date-in-filenameThis plugin hasn't been updated in a while.
hellatanDate 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.
lucawyssDither
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.
axyzDuo
Compile assets with Duo.
npm i metalsmith-duoThis plugin hasn't been updated in a while.
wilsajEach
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.
tylerstickaElevate
Bump files up one or more directories.
npm i metalsmith-elevateThis plugin hasn't been updated in a while.
jscheelEncode 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.
selfVSmindEtsy
Incorporate your active Etsy shop data into a static website.
npm i metalsmith-etsyThis plugin hasn't been updated in a while.
patm2013Excel-Markdown
Query Excel files with SQL and convert to Markdown tables.
npm i metalsmith-excel-markdownThis plugin hasn't been updated in a while.
TreriExcept
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.
almirfilhoFeed 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.
yeojzFile 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.
chadlyFlatten
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.
hoetmaaiersProject 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.
expalmerGist
Lets you get gists from Github Gist
npm i metalsmith-gistThis plugin hasn't been updated in a while.
cusxioGitHub 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.
doodzikGoogle Analytics
Adds the Google Analytics script to your html files
npm i metalsmith-google-analyticsThis plugin hasn't been updated in a while.
leviwheatcroftGoogle Drive
Scrape files from Google Drive.
npm i metalsmith-google-driveThis plugin hasn't been updated in a while.
kalamunaGoogle Sheets
Pull in data from a google spreadsheet using the API.
npm i metalsmith-google-sheetsThis plugin hasn't been updated in a while.
stevenschobertGravatar
Pull in images from Gravatar.com.
npm i metalsmith-gravatargroff
Call the groff document formatting system on input files
npm i metalsmith-groffThis plugin hasn't been updated in a while.
jelzgulp-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.
hoosteenoHTML 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.
doupi18n
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.
kenhoffImage 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.
treygriffithInclude
Make other source files available as properties.
npm i metalsmith-includeThis plugin hasn't been updated in a while.
mintbridgeInclude 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.
alexnewmannnInline Source
Inlines static assets like SVG, Javascript and CSS
npm i metalsmith-inline-sourceThis plugin hasn't been updated in a while.
meatysolutionsInline 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.
lambtronHover
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-chIncremental
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.
antiBaconMachineJSON
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.
RobLoachJSTransformer Partials
Provide `partial` helpers with any JSTransformer.
npm i metalsmith-jstransformer-partialsThis plugin hasn't been updated in a while.
arccozaJust 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.
christophercliffLESS
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-servicesLink Globs
Instead of manually adding links to files, repeat your script, link, img and a tags by using globs.
npm i metalsmith-link-globsThis plugin hasn't been updated in a while.
CMClayLunr 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.
doupMingo
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.
doupMulti Language
Adds multi-language support to your projects.
npm i metalsmith-multi-languageThis plugin hasn't been updated in a while.
mgntMultiMarkdown
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.
Ajedi32Metafiles
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.
Ajedi32Metalsmith 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.
kfranqueiroMore
Stores the content before the "more" comment tag in HTML files.
npm i metalsmith-moreThis plugin hasn't been updated in a while.
carlnordenfeltMove/Remove
Moves and/or removes files in the file structure.
npm i metalsmith-move-removeThis plugin hasn't been updated in a while.
tests-always-includedMustache 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.
unstoppablecarlNavigation
Generate navigation based on file trees
npm i metalsmith-navigationThis plugin hasn't been updated in a while.
firesidegurunested
A metalsmith plugin for nesting your layouts when using the handlebars engine.
npm i metalsmith-nestedThis plugin hasn't been updated in a while.
fmmfonsecang-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.
TreriOnly
Filter out attributes from each file's metadata.
npm i metalsmith-onlyThis plugin hasn't been updated in a while.
astralfrontierOpen Graph
Add Facebook Open Graph meta tags to HTML.
npm i metalsmith-open-graphThis plugin hasn't been updated in a while.
AnthonyAstigeOptiPng
Metalsmith wrapper for optipng - to optimize and make your png images smaller
npm i metalsmith-optipngThis plugin hasn't been updated in a while.
crshdorg
Convert org-mode files to HTML.
npm i metalsmith-orgThis 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.
RobinThriftPaginate
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.
jjclark1982PDF
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.
hellatanPage 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.
AnthonyAstigePicset Generate
Gives responsive image resolution choices. Generates image sets for use with the Picset Handlebars Helper plugin
npm i metalsmith-picset-generateThis plugin hasn't been updated in a while.
AnthonyAstigePicset 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-helperThis plugin hasn't been updated in a while.
fdoxyzPolyglot
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.
mattlyPlaceholder
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.
mbantingPrismic
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-boneyardPrompt
Prompt the user for series of answers in the command line and add them to the global metadata.
npm i metalsmith-promptThis plugin hasn't been updated in a while.
almirfilhoPropdown
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-includedRelative 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.
TreriReplace
Replace attribute values in each file's metadata.
npm i metalsmith-replaceThis plugin hasn't been updated in a while.
dennisschaafRework
Use rework CSS processor to rework your files.
npm i metalsmith-reworkThis plugin hasn't been updated in a while.
incaRho
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.
radiovisualRoot 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.
csmetsSass lint
Stylelint your Sass files.
npm i metalsmith-sass-lintThis plugin hasn't been updated in a while.
jocelynlecomteSeries
Groups files into series for easier navigation
npm i metalsmith-seriesThis plugin hasn't been updated in a while.
mayoServe
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.
ericgjShortcodes
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.
petermorlionSkeleton Gallery
Generate an image gallery, using the Skeleton CSS framework.
npm i metalsmith-skeleton-galleryThis plugin hasn't been updated in a while.
nsonnadSlug
Add a slug property to file metadata, based on a another property.
npm i metalsmith-slugThis plugin hasn't been updated in a while.
blakeembreySnippet
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.
TheHydroImpulseStatic
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.
esundahlStylus
Convert Stylus files to CSS.
npm i metalsmith-stylusThis plugin hasn't been updated in a while.
moshenSubresource Integrity
Generate integrity hashes for site resources.
npm i metalsmith-subresource-integrityThis plugin hasn't been updated in a while.
connected-world-servicesSugar
Use a shorthand when including plugins and avoid calling require() on each individual module.
npm i metalsmith-sugarThis plugin hasn't been updated in a while.
jeffjewissSUITCSS
Preprocess CSS files with SUITCSS.
npm i metalsmith-suitcssThis plugin hasn't been updated in a while.
madeofpeopleSwig Helpers
Useful bits for those of us using swig
npm i metalsmith-swig-helpersThis plugin hasn't been updated in a while.
2xaaSymlink
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.
deltamualphaTimer
Clock how long it takes for plugins in your build sequence to run.
npm i metalsmith-timerThis plugin hasn't been updated in a while.
danielhusarTimestamp
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.
algenonTypography
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.
colophonemesUnCSS
Remove unused CSS rules with UnCSS
npm i metalsmith-uncssThis plugin hasn't been updated in a while.
alisdairUnlisted
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.
FWeinbWatch
Watching for file changes and trigger rebuilds.
npm i metalsmith-watchThis plugin hasn't been updated in a while.
christophercliffWebpack
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-myplugindescription- a short description for the plugin, ideally matchingpackage.jsonor Github repository descriptionnpm- optional, to specify a name different thanname, e.g. for scoped NPM packages (@<myscope>/<metalsmith-myplugin>)