ブログを作り直しました
ブログを思い立って作り直したのでメモがてら書きます。
なぜ作り直したか
元々React+Antd+Netlifyで開発していました。
途中からRenovateを入れているにも関わらずCIでbuildをチェックしていないなど、あまりにも雑に開発していたせいか途中からビルドが通らなくなってしまいました。 そしてReact Routerのbreaking changeとパフォーマンスが微妙ということ、パフォーマンスを意識するならできるだけSSR(or SSG)で作りたいよねというモチベーションからNext.jsで作り直しました。
元記事ですが、ContentfulからDatoCMSに移した関係で公開したタイムスタンプがおかしくなってしまい、いじれるものでもないので消してしまいました。時間的な要素がないものは再度公開しようと思います。
初回公開日のタイムスタンプが残っていたので戻しました。
開発要素
Next.js
13も出てまだまだ進化しており、Quikもありますがしっかりリライトもしたかったのでそれなりに枯れているNext.jsにしました。
app directoryはすぐ慣れて使いやすいのでいい感じです。
CSS Modules
CSS in JSは楽ですがパフォーマンスやJSのバンドルサイズを考慮してCSS Modulesにしました。
CSS in JSほどの開発体験は感じませんが、それでも十分やっていける範囲です。
Vercel
Next.jsを使ってもっともランタイムと開発両方でパフォーマンスを出すならVercelしかないと思います。
Apollo Client
正直適当ですが元々使っていたのでそのまま使いました。特にNext.js13との相性とかは見てないですが使えているので現状問題なさそうです。
DatoCMS
GraphQLエンドポイントがあり、機能面で見たら一人で使うならDatoCMSの方が良さそうだったので乗り換えてみました。
こんな感じです。これから記事を更新していきます。
改善要素
UI
一旦の実装なのでもっといい感じにしたいです。
カテゴリ別・タグ別検索
もっと記事が増えたらやります。