サイト運営の裏側 |
Gatsby で詰まって Astro に移行したら捗った話
本文
実は、このサイトは前々から Gatsby で作っていたサイトをベースに Astro を使ってリニューアルしたものになります。
Gatsby も Astro も CMS の一種であり、どちらも React ベースのフレームワークです。
双方とも Markdown を使ってコンテンツを管理できて、わりとパフォーマンスが出る、という評判のものです。
Gatsby でハマっていた
簡単なブログ的なサイトを作るのでアレば Gatsby でも問題なくできていたのですが、作りたかった機能を実装するに当たって Gatsby ではつまづくことが多く、ハマりまくり、何度も頓挫していました。
ハマっては、放置、ハマっては、放置を繰り返したので数年の時が過ぎた気がします。
具体的には ESM と CommonJS という規格の問題っぽいものにハマって、やりたいことを実現するために必要なライブラリが動かなかったりしたので Gatsby 自体のメジャーアップデートやライブラリのアップデートを待つ、実装方法を変える、バージョンの組み合わせを変える、など、いろんな試行錯誤を繰り返していました。
結局 CMS ごと変えてみた
ビューの周りの実装はすでに作り込んでいたし、それなりに時間もかけていたので、Gatsby に固執していましたが、「他を試してみよう」と一大決心をして Astro に移行してみました。
そうしたら、わりとあっさりと実装できてしまいました。
あまりにもハマったので自分の技術力のなさを感じていましたが Gatsby の制約にハマっていただけだったようです。
JavaScript 界隈は専門ではなく、技術的に解決できる問題なのか、できない問題なのかがイマイチ判断がつかなかったのが、ハマった原因な気がします。
Astro に乗り換えたら、わりとあっさりすべての問題が解決してしまいました。
Gatsby が悪いわけではないですが、とりあえず Astro に移行してよかったなと思います。

