Metalsmith vs Nikola
Metalsmith
metalsmith.ioNikola
getnikola.comSide by side
| Figure | Metalsmith | Nikola |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| API | Yes | — |
| Self-hosted | — | Yes |
| Plans published | 1 | 1 |
| Spec score · Static site generators | 8.6 (#9) | 8.8 (#4) |
| Deployment | Builds are static folders that can be deployed to a CDN, Netlify, GitHub Pages, GitLab Pages, SFTP host or custom server over SSH. | Nikola sites can be hosted on any web server that serves HTML files, and the handbook lists GitHub Pages deployment support. |
| Free plan | Yes | Yes |
| Integrations | Examples of plugin integrations include Sass, PostCSS, JavaScript bundling, Uglify, Markdown, collections and layouts. | The features page says Nikola can work with static-site CMS solutions including Dato CMS, Netlify CMS, and Contentful. |
Plans
In their own words
Metalsmith
Metalsmith is a free, pluggable static-site generator for NodeJS that works more like a library than a framework. It transforms a directory tree into plain JavaScript objects that plugins can manipulate, without requiring a predefined project structure. Developers can use configuration over code or code over configuration, and access the package through either its JavaScript API or command-line interface. 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 made from Markdown for PDF, ePUB, or MOBI output. Starter repositories cover blog, company, resume, and clean-blog projects. Builds create static folders for deployment to CDNs, Netlify, GitHub Pages, GitLab Pages, SFTP hosts, or custom servers. Metalsmith requires NodeJS; the listed platforms include Linux, macOS, and Windows. The documentation says partial rebuilds are not available and suggests using a file watcher and browser synchronization package for automatic rebuilds. No billing terms or prices are stated on the supplied pages.
Nikola
Nikola is a static site and blog generator that turns written content into HTML files and assets for a web server. It can build blogs, company and personal sites, software project sites, and book sites. Built-in inputs include reStructuredText, Markdown, IPython notebooks, and HTML, with plugins available for additional formats. Blog components include comments, tags, categories, archives, and RSS/Atom feeds; image galleries and code listings are also included. Nikola supports almost 40 languages out of the box, including posts in multiple languages. Sites can be hosted on any web server that serves HTML files, and the handbook lists GitHub Pages deployment. The software is written in Python 3, with Python 3.8 or later listed on the homepage, and is free under the MIT license. Users can extend it with Python plugins and make themes using Mako or Jinja2. Incremental builds use doit. Because generated sites do not run code on the server, they cannot process form input except for comments. Indexed plugins and themes are not officially supported.