When comparing Metalsmith vs Middleman, the Slant community recommends Middleman for most people. In the question“What are the best static site generators?” Middleman is ranked 7th while Metalsmith is ranked 13th. The most important reason people chose Middleman is:
[Minification and compression](http://middlemanapp.com/advanced/file-size-optimization/index.html) are as easy as setting a few configuration options, and [unique asset hashes](http://middlemanapp.com/advanced/improving-cacheability/) are available to allow you to invalidate the cache of files that change regularly.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Flexible beyond a static site generator
Because metalsmith is at its core focused on transforming directories of files, it can be used for more than just static site generation, and could be used as a build tool, a documentation generator, or any use that requires file transformations.
Pro Designed around plugins
Everything in metalsmith is a plugin, and it is designed to make it easy to write new ones.
Pro Chaining API
Metalsmith uses a chaining API that's consistent and simple to use:
Metalsmith(__dirname)
.use(markdown)
.use(templates('handlebars'))
.build();
Pro Built in minification, compression, and cache busting
Minification and compression are as easy as setting a few configuration options, and unique asset hashes are available to allow you to invalidate the cache of files that change regularly.
Pro Support for a variety of templating languages and preprocessors
Middleman supports lots of compiled languages, such as Less, Markdown, Textile, CoffeeScript, Stylus and more.
Pro Extensible and flexible
Middleman has a resources page full of official and community extensions.
Pro External pipeline management with Webpack
Replace your Gulp, Grunt, Bower configs
Pro Embraces Rails conventions
Middleman follows established conventions so if you know rails, you can easily pick up middleman.
Pro Easy deployment options
Cons
Con Small community
The Metalsmith community is still fairly small compared to the more popular options. This results in a lack of learning resources and difficulty finding support from experienced users. However, a slack group has recently been started.
Con Not client enabled API chaining
According to the spec on API chaining, the API request/response need to associate an API object to an corresponding controller/action/uri to be able to validate and handle the request/response and the datasets.
Without that, the consuming client service cannot properly validate or relate the datasets from one to the other. Links have no relational value and the api object creates the relationship between the datasets while maintaining an api/dataset relationship with the corresponding controller/action/uri
As such, the current methodology supported would not be able to be called by the client not supported by the client in a RESTFUL manner
Con Too much magic happens
For new users it is hard to understand what is going on and why.
Con A little more complicated than other static site generators
Middleman is a big piece of software, it's not simply a static blog generator. Because of all the functionality and flexibility it offers it can be a little more complex than other static site generators and a little harder to learn all of its bells and whistles.