/note/tech

You Don't Need Next.js

■ Next.jsは認知負荷が高い

  • ありとあらゆるキャッシュがOpt-in
    • 無効化できないキャッシュも存在する
  • 知らないと訳の分からない挙動をする

■ Next.jsはサーキット最速

  • Next.jsは
    • 決められたコースを
    • 潤沢な予算と
    • 最高のチームによるサポートを受けながら
    • サーキットを最速で走る
    • F1マシン

■ おまえにNext.jsは必要ない

  • 自分のアプリがDOMの組み立てに何msかかっているか分からない
    • →おまえにNext.jsは必要ない
  • バックエンドの処理に何msかかっているか分からない
    • →おまえにNext.jsは必要ない
  • 別ドメインへのアクセス時、名前解決に何msかかっているか分からない
    • →おまえにNext.jsは必要ない

■ じゃあなにがいいのか?(個人的なオススメ)

  • Server Side Rendering がしたい
    • → Remix
  • Server Side Generation がしたい
    • → Astro
  • Client Side Rendering でいいや
    • 1画面でいい •
      • → Vite + React
    • ルーティングが欲しい
      • ここが2024年の分岐路

■ 2024年のSPA戦争

  • Vite + TanStack Router plugin
    • 2023/12/23にv1.0になったばかり
    • タイプセーフなルーティングができる
  • Remix SPA mode
    • 2024/02/20にStable Release
    • ファイルベースルーティングとしてセットアップされたVite + React Routerとして使える
    • SPAで始めて、後からSSRできる