日本語によるTypeScript中心のSvelte 5/SvelteKit完全マスター学習コンテンツです。最新のSvelte 5 Runesシステムを使用し、Mermaidダイアグラムによる視覚的な解説も充実。実際に動作するAPI連携例(JSONPlaceholder、GitHub Search API)を含む実践的な内容。Load関数のデータフローや実行環境別アーキテクチャ(SSR/SSG/SPA)についても詳細に解説。フォーム処理のActions実行フローもシーケンス図とフローチャートで完全可視化。
🌐 公開サイト: https://shuji-bonji.github.io/Svelte-and-SvelteKit-with-TypeScript/
このドキュメントは、TypeScriptを使用してSvelte 5とSvelteKitを学習するための包括的なガイドです。最新のSvelte 5 Runesシステムを中心に、実践的なコード例と共に解説しています。
学習内容を実際のコードで確認できる実装例プロジェクトを提供しています。
基礎版 - svelte5-blog-example ✅完成
Markdown版 - svelte5-blog-markdown ✅完成
これらのプロジェクトは本ドキュメントの学習内容と連動し、実際に動作するコードとして提供されています。
$derived.by()
など最新構文)$state
- リアクティブな状態管理$derived
/ $derived.by()
- 計算値と明示的な派生値$effect
/ $effect.pre
- 副作用の処理とDOM更新前実行$props
- プロパティ定義$bindable
- 双方向バインディング$inspect
- デバッグツールSvelte 5の内部実装や高度なトピックを扱います。
$state.raw
vs $state
の使い分け$derived
vs $effect
vs $derived.by
の違いこのドキュメントでは、複雑な概念を視覚的に理解できるよう、Mermaidダイアグラムを豊富に使用しています。
<script>
import Mermaid from '$lib/components/Mermaid.svelte';
const diagramCode = `graph TD
A[開始] --> B[処理]
B --> C[終了]`;
</script>
<Mermaid diagram={diagramCode} />
詳細はMermaidデモページをご確認ください。
# リポジトリのクローン
git clone https://github.com/shuji-bonji/Svelte-and-SvelteKit-with-TypeScript.git
cd Svelte-and-SvelteKit-with-TypeScript
# 依存関係のインストール
pnpm install
# 開発サーバーの起動
pnpm dev
開発サーバーは http://localhost:5173
で起動します。
本プロジェクトではSveltePressの標準機能に加えて、独自の自動ナビゲーションシステムを実装しています。
src/lib/config/sidebar.ts
のサイドバー構造から自動的に生成(二重管理不要)src/lib/components/AutoPageNavigation.svelte
- ナビゲーション表示コンポーネントsrc/lib/utils/navigation-from-config.ts
- sidebar.tsから構造を生成するユーティリティsrc/lib/config/sidebar.ts
- サイドバー構造の単一情報源(Single Source of Truth)詳細はCLAUDE.mdを参照してください。
# プロダクションビルド
pnpm build
# ビルド結果のプレビュー
pnpm preview
プロダクションビルドは自動的にGitHub Pagesにデプロイされます。
# 開発サーバー起動
pnpm dev
# プロダクションビルド
pnpm build
# ビルド結果をローカルでプレビュー
pnpm preview
Issuesからお願いします。
git checkout -b feature/amazing-feature
)git commit -m 'Add some amazing feature'
)git push origin feature/amazing-feature
)$derived.by()
を使用詳細はCLAUDE.mdを参照してください。
このプロジェクトはCreative Commons Attribution 4.0 International Licenseの下で公開されています。 学習目的での自由な利用・改変・配布が可能です。
Note: このドキュメントは継続的に更新されています。Svelte 5の最新機能やMermaidダイアグラムによる視覚的解説を随時追加しています。最新の情報は公開サイトをご確認ください。
Last Updated: 2025年9月20日 - 実装例プロジェクトの最新化完了。resolveRoute
をresolve
に移行、svelte5-todo-exampleプロジェクトの追加