Metalsmith
Nodejs製の静的サイトジェネレーター(static site generator)のMetalsmith。
githubのリポジトリ:https://github.com/segmentio/metalsmith
公式サイトはMetalsmithで生成されている。
公式サイトのリポジトリ:https://github.com/segmentio/metalsmith.io。
合言葉は、EVERYTHING IS A PLUGIN.
すべてがプラグイン、という思想の元に作られた静的サイトジェネレーター。
静的サイトジェネレーター選び
StaticGenを見るのが一番良い。
基本的には、上位に位置する静的サイトジェネレーターのなかから、自分に合うものを探す。
以下、いくつか紹介する。
Jekyll
静的サイトジェネレーターのド定番。Ruby。
ドキュメントや事例の多さ、テンプレートの多さが売り。
ビルド速度やRuby関連のバージョン管理が苦痛でやめていく人は見る。
Windowsユーザーは、導入の時点でRuby周り、Bundler周りで苦労してそう。
テンプレートエンジンはLiquid。
Octopress
Jekyllがベース。ブログに特化する拡張がされている。
ブログ特化なので、少し変わったことをやろうとすると、窮屈。
逆にブログとして利用するだけなら、ドキュメントも豊富で楽そう。
テンプレートエンジンはJekyllと同じなのでLiquid。
Middleman
Ruby。Sinatraベース。
公式サイトが日本語に翻訳されてたりして、そういう意味で親しみやすい。
Jekyllより後発ということで、テンプレートエンジンの選択肢など広がっているイメージ。
テンプレートエンジンは、ERBやHamlやTiltなどなど。
Pelican
Python。ドキュメントも多い気がする。
Pythonでやりたいなら、これほぼ一択?Cactusもアリか。
テンプレートエンジンがJinja2。
Hugo
今一番、勢いがあると思う。
JekyllやOctopress、MiddlemanなどのRubyの静的サイトジェネレーターを使っていた人が
かなり移行しているイメージ。言語はGo。
導入が容易く、ビルドが他に追随を許さないぐらい速い。
簡単に、そして毎日気軽にブログ記事など投稿したい人は、今これが良いのでは。
テンプレートエンジンはGo Templates。
Metalsmith
最後にMetalsmish。JavaScript。
Hugoよりビルドは遅いし、Jekyllなどよりドキュメントなど少ない。
Starの数も増加傾向も、他の上位に比べれば少ない。
公式のexampleが古いようで、git cloneしてもすぐに動かない。
でも、とにかく縛りがない。
テンプレートエンジンプラグインの定番は、consolidate.jsのwrapperなので、
handlebars,mustache,haml,underscore,Liquid,ejs,eco,reactive...etcが使える。
Markdownプラグインも、markedやmarkdown-itのwrapperなどから選べる。
ディレクトリ構成をJekyllライクにしたりも可能。
プラグインの自作もそこそこ簡単そう。
Metalsmithが合う人
静的サイトジェネレーターに縛られたくない人や、ちょっと変わったことをやりたい人は合うはず。
今後、やりたいコトが増えるかも、という予感や野望がある人もMetalsmithで良いんじゃないか。
導入コストはドキュメント不足などのせいで、若干高いものの、
それ自体はCommunityが活発になればかなり改善されると思っている。