はじめに
ブログを Next.js から Astro に移行したことについてあれこれ書く。 実は去年の今くらいにも Next.js の勉強を兼ねてブログサイトを書き直した。その時の構成はざっくり下記の通り。
- Web サイト用のフレームワーク
- Next.js
- コンテンツ管理
- esa
- S3
- デプロイ管理
- Vercel
- ドメイン管理
- Google Domains
esa のドラッグ&ドロップで画像を S3 に保存してくれる体験はとても良かった。ただ記事を書く時に vim のキーバインドが使いたくて、後半はほとんど手元のエディタで記事を書いていた。大量の画像をアップロードしていたわけでもなく、Vercel も無料の範囲内で利用していたので特に esa とドメイン以外でお金が出ていった記憶はない。
移行
去年、TOEIC の勉強を始めて1ヶ月くらいは勉強の過程を毎日ブログに投稿していた。結果点数が上がって良い気になって途中でやめてしまい、そのタイミングでブログを更新する頻度も落ちていった。そこでまだ TOEIC の勉強を続けられていたら TOEIC の点数を今よりさらに伸ばせていたのかもしれないし、ブログの投稿頻度も落ちてなかったのかもしれない。それから少し経って、RubyKaigi 2023 に参加したこともあり、雑な感想文を書いた。それ以降、全く記事は書かなくなっていた。
そして定期的にくるサイトリニューアル欲(新しいスタックでブログを書き換えたくなる衝動)に負けて、シンプルな構成でかつ Next.js 以外で作ってみたいなと考えるようになった。
新しい構成
新しい構成はざっくり下記の通り。デプロイやドメイン管理周りで新しく Cloudflare を採用している。
- Web サイト用のフレームワーク
- Astro
- コンテンツ管理
- Github
- デプロイ管理
- CloudFlare Pages
- ドメイン管理
- Cloudflare Registrar
Astro にした理由は流行ってそうだなくらいの軽い感じ。Hono も割と盛り上がっているのを感じていたが、ブログを書くならこれ、みたいな謳い文句も目に入っていたので、Astro にした。
ちなみに、Kotlin を仕事で使う機会が増えたのもあり、Ktor を使って はてなブログやら note みたいなサービスをつくろうかとも思ったが、記事を書く時期がどんどん後ろにずれそうだなと思ったのでそれはやめた。