Metalsmith
Metalsmith is a free, pluggable static-site generator for NodeJS.
What Metalsmith is
Metalsmith is a free, pluggable static-site generator for NodeJS. It works like a library rather than a framework that imposes a project structure: it turns a directory tree into JavaScript objects that plugins can manipulate. The package provides both a JavaScript API and a command-line interface, with configuration over code as well as code over configuration. It works with npm, Markdown, JSON, YAML and a templating language of choice. Example uses include static sites, scaffolding, backups, command-line and deployment tools, and eBooks produced from Markdown in PDF, ePUB or MOBI formats. Starter repositories cover blog, company, resume and clean-blog projects. Builds create static folders that can be deployed to CDNs, Netlify, GitHub Pages, GitLab Pages, SFTP hosts or custom servers. Metalsmith requires NodeJS and supports Linux and Windows builds. Partial rebuilds are not available; the documentation recommends pairing a file watcher with browser synchronization for automatic rebuilds. It is free, and the supplied pages state no billing terms or prices.
Good
- Offers both a JavaScript API and CLI.
- Works with Markdown, JSON and YAML.
- Builds deploy to multiple hosting destinations.
- Free software with no stated billing terms.
Watch out
- Requires NodeJS.
- Partial rebuilds are not available.
- Automatic rebuilds require additional tools.
Who it suits
Metalsmith suits developers building static sites or other file-based outputs who want to shape projects through plugins. It requires NodeJS, and automatic rebuild workflows need additional tools.
Verdict
Metalsmith offers a flexible plugin-based approach to static builds and other outputs. Its lack of partial rebuilds matters for developers seeking automatic build updates.
Plans and prices
From Metalsmith's own pricing page, checked 28 Sep 2001.
| Plan | Price | What it gives you |
|---|---|---|
| Metalsmith.js | Free | MIT/(L)GPL licensed software |
The facts
Each one read from Metalsmith's own pages, with the date it was checked.
What it does
- API and CLI
- The package exposes both a JavaScript API and a command-line interface.checked 28 Sep 2001
- Build limitation
- Metalsmith does not yet offer partial rebuilds; the documentation recommends using a file watcher and browser synchronization package for automatic rebuilds.checked 28 Sep 2001
- CMS integration
- Yeschecked 20 Sep 2001
- Community channel
- The project says informal announcements are made periodically in the Gitter community chat.checked 28 Sep 2001
- Configuration modes
- It supports both configuration over code and code over configuration.checked 28 Sep 2001
- Content sources
- markdownchecked 20 Sep 2001
- Core plugins
- Plugins with the @metalsmith/ prefix are core plugins officially supported by Metalsmith.checked 28 Sep 2001
- Current release
- Metalsmith 2.7 requires NodeJS 16 or newer and adds metalsmith.yml configuration support plus init and clean CLI commands.checked 28 Sep 2001
- Deployment
- Builds are static folders that can be deployed to a CDN, Netlify, GitHub Pages, GitLab Pages, SFTP host or custom server over SSH.checked 28 Sep 2001
- Deployment targets
- Static folders can be deployed to CDNs, Netlify, GitHub Pages, GitLab Pages, SFTP hosts, or custom servers.checked 28 Sep 2001
- eBook formats
- An example eBook workflow can produce PDF, ePUB, and MOBI files from Markdown.checked 28 Sep 2001
- File transformation
- It translates a directory tree into plain JavaScript objects that plugins can manipulate.checked 28 Sep 2001
- Incremental builds
- Yeschecked 20 Sep 2001
- Integrations
- Examples of plugin integrations include Sass, PostCSS, JavaScript bundling, Uglify, Markdown, collections and layouts.checked 28 Sep 2001
- Interfaces
- The package exposes both a JavaScript API and a CLI.checked 28 Sep 2001
- Library design
- Metalsmith works more like a library than a framework and does not require a predefined structure.checked 28 Sep 2001
- Local preview server
- Nochecked 20 Sep 2001
- Multilingual support
- Yeschecked 20 Sep 2001
- Operating systems
- Metalsmith builds are tested on Linux and Windows systems and officially supported NodeJS LTS releases.checked 28 Sep 2001
- Package installers
- Installation examples are provided for npm, yarn, and pnpm.checked 28 Sep 2001
Money
- Billing information
- No billing terms or prices are stated on the supplied pages.checked 28 Sep 2001
- Free plan
- Yeschecked 20 Sep 2001
The company
- Company attribution
- The site copyright notice attributes the website to webbketje and dates it 2021.checked 28 Sep 2001
- Founded
- 2014checked 28 Sep 2001
Alternatives to Metalsmith
- 1

Gatsby
Free planWebAPISelf-hosted8.1From $9 a month - 2
Jekyll
Free planOpen sourceWebLinuxmacOSSelf-hosted8.1Free plan - 3

Cecil
Free planLinuxmacOSWindows7.4Free plan - 4

Eleventy
Free planLinuxmacOSSelf-hostedWindows7.4Free plan - 5

Nikola
Free planLinuxmacOSSelf-hostedWindows7.4Free plan - 6

Publii
Free planLinuxmacOSWindows7.3Free plan
