ウェブサイトの再構築
このウェブサイト(shiimaxx.com)を再構築しました。元々は自分が外部サービスに書いた記事の一覧を表示するだけの簡素なものだったのですが、今後はこのウェブサイト自体にもコンテンツを載せられるようにしました。 最近になって文章を書くことに対して興味が湧いてきて、自分用の書くための場所がほしくなったというのが理由です。
元々はNext.jsのStatic Site Generationベースで作っていました。ビルド時に自作Web APIから自分が書いた記事情報を取ってきてレンダリングするという仕組みです。Web APIはApp Engineでホスティングしていました。
前述した理由もあってウェブサイトを作り直すことにしたのですが、ウェブサイト自体のメンテナンスにあまり時間をとれないということもありStatic Site Generatorを使うことにしました。
具体的にはZolaというStatic Site Generatorを使っています。ChatGPTで「Static Site Generator 2025」をリストアップしてもらいつつ、自分の用途にあっていそうなものに絞り込んでいったところ、最終的にEleventyとZolaが候補になりました。Rust製でCLIベースで操作できるというところに惹かれたのと、今使っているSereneというテーマがシンプルで自分のイメージにあっていたという理由でZolaを使うことにしました。
Sereneにはリアクション機能があり、バックエンドAPIを自分で用意すれば記事ページにリアクションボタンを設置できます(このページの右下に表示されているやつです)。 いくつかリファレンス実装もあったのですが、せっかくなので触ってみたいなと思っていたHonoを使ってバックエンドAPIを実装してみました。自分で書いたコードがまったくないというのも少しさみしいなと思っていたので、ちょうどよい規模感でコードが書ける余地があってよかったです。
ホスティングにはCloudflareを使っていて、静的コンテンツの配信はPages、リアクション機能用のバックエンドAPIはPages Functions、バックエンドAPIで使うデータストアはWorkers KVを使っています。