Nuxt vs Gatsby vs Astro:60歳目前のおじさんがAstroに挑戦!
Simple is Best! 60歳目前のおじさんにとって、複雑なものはNGです。ブログをNuxtからGatsbyに移行した後、最近話題のAstroにチャレンジしてみました。
Astroの圧勝!
Nuxt、Gatsby、Astroでそれぞれブログを作ってみたところ、Astroは圧倒的な軽さで圧勝! Gatsbyの半分以下のステップ数で構築できました。
No | Language | Nuxt | Gatsby | Astro |
---|---|---|---|---|
1 | JavaScript | 0 | 498 | 15 |
2 | TypeScript | 115 | 197 | 63 |
3 | Astro/Vuejs | 266 | 0 | 453 |
4 | Sass/PostCSS | 709 | 740 | 109 |
5 | total | 1090 | 1435 | 640 |
TOCやダークモード機能も簡単搭載、さらにTailwind CSSを導入すればデザインも楽々! 元々ロジックよりデザインの方がコード量が多かったので、コード圧縮にも貢献しました。
Astroのセットアップ
インストールウィザードを使ってAstroをセットアップしていきます。
環境
-
Mac OS Sonoma
-
node v20.10.0
-
yarn v1.22.21
手順
-
Astro公式ドキュメントを確認
-
yarn create astro でプロジェクトを作成。
-
yarn dev で開発サーバーを起動。
-
http://localhost:4321/ で動作確認。
Tailwind CSSとMDXの導入
-
Tailwind CSS導入ガイドを確認
-
@astrojs/tailwindをインストール。
-
npx tailwindcss ini でtailwind.config.jsファイルを作成。
-
将来の拡張性を考慮し、記事ファイルをMDX形式に対応するために@astrojs/mdxをインストール。
-
astro.config.mjsに@astrojs/tailwindと@astrojs/mdxを追加。
次回
既存の記事を登録し、表示できるようにしていきます
その他
記事と画像をAstroフォルダと連携するNotionアプリをnode.jsで作ってみたので、後日紹介予定です。
参考
-
Astro公式ドキュメント: https://docs.astro.build/
-
Tailwind CSS導入ガイド: https://docs.astro.build/en/guides/integrations-guide/tailwind/