ここのサイトは去年あたりにGatsbyで生成するようにしていたのですが、しばらく放置してたらGatsbyやプラグインのアップデートについて行けなくなりました。それ以前でも、生成元の構成がちょっと複雑で手が入れづらかったので、どうにかしたいなぁと考えてました。
で、最近業務でGoをちょっとだけ扱っていることもあって、Hugoを触ってみたらなかなかいい感じだったので、少しずつ触りながらサイトを作り直しました。
構成
サイトジェネレーター→GitHub→Netlifyで、プッシュすると勝手にデプロイしてくれるやつです。
ソースコード
公開されているThemeをとってきて構造を確認したりしながら、空の状態からできるだけ余計なものを作らないように気をつけて組んでみました。
結局スタートから今の段階までで一番時間がかかったのはHTML/CSSの部分で、Bulmaも初めてだし思うとおりにものが配置出来ないイライラを我慢するのに一番労力がかかってます。
あとは、未だに落ちてくるデータの構造がちゃんとつかめてなくて、先人のThemeを読んで真似をしてるだけの状況です。
Hugo
公開されているThemeが色々あるので、それをそのまま使える限りはGoの知識は不要です。各Themeで用意されている設定をconfig.tomlに書き込んで、所定の位置にmarkdownファイルを置くだけ。
サイト構築の速度は売りとしているだけあって、言葉通り秒で構築完了します。
作業に使うのもHugoだけで、他のライブラリやプラグインなどが必要ないので余計なことに気をとられずに済みます。
(Gatsbyは正直あのdependenciesを見るのが苦痛だった…)
なので、意外と簡単に自分の求める感じになりました。
ちょっとlayoutのマッピングルールが複雑で、しばらくの間どのテンプレートが使われるのかわからなくなる、みたいなことがあるのと、ドキュメントが結構濃密で欲しい情報にたどり着くのに時間がかかりますけどね…
とりあえず、なんか形にはなったので、もうちょっとHugoについて研究しながら、今のレイアウトをTheme化していこうと思います。