Next.js (App Router)
フレームワークとしてNext.js App Routerを採用した理由。
決定
UIライブラリとしてReactを、フレームワークとしてNext.js (App Router) を採用する。
Reactを選んだ理由
コミュニティの活発さ
Reactは主要なUIライブラリの中で最もコミュニティが大きく、ライブラリ・ツール・学習リソースの選択肢が圧倒的に多い。業務システム開発で必要になるUIコンポーネント、フォーム管理、状態管理などのライブラリが豊富に揃っている。
採用実績と人材の確保
Reactエンジニアの母数が多く、チーム拡大時の採用面で有利である。
Next.jsを選んだ理由
Reactを採用した上で、フレームワークの選択肢はNext.js、Remix等がある。
コミュニティが最も活発
npmダウンロード数、GitHubスター数、Stack Overflowの質問数のいずれも最大であり、問題解決時の情報源が豊富である。
フルスタック統合
API Routes、ミドルウェア、Server Actionsを備えており、フロントエンドとバックエンドを単一フレームワークで構築できる。小規模チームにおいて、リポジトリやデプロイの分離による管理コストを避けられる。
ファイルベースルーティング
App Routerのディレクトリ構造がそのままURL構造になるため、業務システムの画面構成(従業員一覧、シフト管理、勤怠管理等)を直感的にマッピングできる。
デプロイの容易さ
Vercelへのデプロイがゼロコンフィグで完了する。プレビュー環境の自動生成やエッジネットワークなど、インフラの管理コストを最小限にできる。
画像の自動最適化
next/image により、リクエスト時の自動リサイズ・フォーマット変換(WebP/AVIF)、遅延読み込み、CLS防止が組み込みで提供される。外部ライブラリなしで画像最適化が完結する。
段階的な機能採用
CSR中心の設計から始め、必要に応じてSSRやServer Componentを導入できる。初期段階で過剰な設計判断を迫られない。