mcpField
S
svelte-runes

svelte-runes

github.com/spences10開発941.0k 回インストール2 週間前に更新
リポジトリ

svelte-runes について

svelte-runesは、Svelte 5でコンポーネントを開発する人向けのスキルです。Runeの使い分けやリアクティビティの規則、Svelte 4からの移行時の注意点を説明します。

主な機能

  1. 01各Runeの主な用途を解説
  2. 02トップレベルでの使用とリアクティビティ規則を説明
  3. 03移行とコンポーネントAPIの資料を提供
  4. 04よくある誤りとデバッグ方法を紹介

活用シーン

  1. 01状態管理に使うRuneの選択
  2. 02コンポーネントのプロパティや派生値の記述
  3. 03リアクティビティの問題や構文移行の確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/spences10/svelte-skills-kit --skill svelte-runes

インストール後、Claude Code で/svelte-runesを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

README.md
examples/
bindable-props.svelte
effect-vs-derived.svelte
references/
common-mistakes.md
component-api.md
migration-gotchas.md
reactivity-patterns.md
snippets-vs-slots.md

詳細

Svelte Runes

クイックスタート

どのルーンを使う? プロパティ:$props() | バインド可能:$bindable() | 算出値:$derived() | 副作用:$effect() | 状態:$state()

主なルール: ルーンはトップレベルでのみ使用できます。$derived は上書きできます (読み取り専用にするには const を使用します)。Svelte 4 と 5 の構文を混在させないでください。 オブジェクトと配列はデフォルトで深くリアクティブです。

例

<script>
	let count = $state(0); // Mutable state
	const doubled = $derived(count * 2); // Computed (const = read-only)

	$effect(() => {
		console.log(`Count is ${count}`); // Side effect
	});
</script>

<button onclick={() => count++}>
	{count} (doubled: {doubled})
</button>

リファレンスファイル

@attach やその他のテンプレートディレクティブについては、 svelte-template-directives スキルを参照してください。

補足

  • on:click ではなく onclick を使用し、レイアウトでは {@render children()} を使用します
  • $derived は再代入できます(5.25 以降)。読み取り専用にするには const を使用します
  • 型安全性を確保するには、setContext/getContext より createContext を使用します
  • リアクティビティの問題のデバッグには $inspect.trace を使用します
  • 最終確認日: 2026-03-12

コメント