Node.jsで静的にサイトを生成する時の現時点でのおすすめ

  • 39
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

注意

このポストも半年以上が経過し、情報が古くなっています。選定の際は以下のサイトなどで再度検討することをおすすめします。
Top Open-Source Static Site Generators - StaticGen

方向性は2つ選択肢は3つ

タスクランナ

単ページやシンプルな構造のサイトの場合いわゆるスタティックサイトジェネレータでなくても、GRUNTgulp.jsなどのタスクランナーで十分
わざわざ独自の規格とかに乗っかるより、そっちのエコシステムに乗っかったほうが断然いい
ただし、それなりにタスクランナーについて予備知識は必要

タスクランナ+ジェネレータ

設定ファイルとかディレクトリの初期設定が面倒なら、GruntならYeoman、gulp.jsならSlushなどを使えばいい。
こっちはタスクランナーの予備知識に加えてジェネレータの知識も必要。
大きなエコシステムに乗っからなくてもいいなら割と取っ付き易いBrunchって選択肢もある。

スタティックサイトジェネレータ

そして今回の書きたかった上の2つの方向とは違う専用ツールとしてのスタティックサイトジェネレータ

StaticSiteGeneratorを選ぶ理由

スタティックサイトジェネレータをわざわざ使う場合の基準はどこなのか考えた結果

  • サイト生成に特化してるから始めやすい
  • CMS的なヘルパーが豊富
    • 月別アーカイブ
    • タグ別アーカイブ
  • 他のブログシステムとかからの移行ツールがある
  • テーマテンプレートがある

とかの付加価値があるかどうかだと思った。
この辺りはRubyのjekyllmiddlemanが段違いに充実していて人気がある理由かもしれない。
実際Githubのスターの数も桁が違う。[リスト]Static Site Generator 静的にHTMLを書き出すもののリストを作ってみよう。

結論

Middlemanやjekyllは魅力的だけど、javascriptで全部済ませたいからNodejs製のプロダクトの中から探しているわけで至った結論がCMS的な機能を今すぐに求めるなら、hexoがいいかな。
CMS的な機能も欲しいけど、Grunt/Gulpのエコシステムに乗っかりたいなら、Assemble(絶賛開発中感有り)

Archives__2014_5___Hexo.png

以上現時点ではそんな感じ。