目的:画面を作り、公開する

静的サイトを生成する

「ブログや資料サイトを作りたい」

この目的で選ぶときに見る軸

  1. ビルド時間
  2. コンテンツ形式
  3. 動的要素の追加方法

下の表の「主要制約」は各ツールで最も先に当たる制約。軸ごとの値はツール詳細の制約表で確認する。

この目的に使える手段(4件)

静的サイトを生成する を持つツールの比較
ツール分類種別学習料金成熟主要制約検証
Astro
既定でJavaScriptを出さない静的サイト生成器。必要な部分だけ島として動かす
画面・フロントエンドフレームワーク無料安定島(Island)の間の状態共有:部分ハイドレーションされた島の間では React Context 等のコンテキストラッパーが使えない。共有には Nano Stores(1 KB 未満、依存なし)のような外部ストアが推奨される
Notion
ドキュメント・DB・Wikiを1つにまとめ、Webサイトとしても公開できるツール
ノーコード・SaaSマネージドサービス無料枠あり安定無料プランのブロック数上限:オーナー1人のワークスペースは無制限。オーナー2人以上は1,000ブロックまで(削除してもカウントは減らず、上限到達後3日間の猶予がある)
SvelteKit
Svelteでルーティング・サーバー処理・静的出力までを完結させるフレームワーク
画面・フロントエンドフレームワーク無料安定デプロイ先ごとのアダプタ選定:ビルド出力をデプロイ環境向けに変換する「アダプタ」の指定がsvelte.config.jsで必須。公式にNode・Cloudflare・Netlify・Vercel・静的サイト(adapter-static)向けがある
Next.js
Reactにルーティング・サーバー描画・APIを足した、Web アプリのフレームワーク
画面・フロントエンドフレームワーク無料安定静的エクスポートで使えない機能:output を export にすると Cookie、Rewrites・Redirects・Headers、Proxy、ISR、既定ローダーの画像最適化、Draft Mode、Server Actions、Intercepting Routes、generateStaticParams のない動的ルートが使えない。Route Handler は GET のみ、force-static の明示が必要