SvelteKitでエラーが起きたときの処理方法を整理します。+error.svelte でエラー画面を作り、error() ヘルパーでエラーを投げる方法と、コンポーネント内でのエラー処理の違いを解説します。
Svelte 5ではスロット(slot)が廃止され、代わりにスニペットという仕組みになりました。{#snippet} で定義して {@render} で呼び出します。
Svelte 5で $props() にTypeScriptの型を付ける方法と、子コンポーネントから親の値を変更できる $bindable の使い方を整理します。
Svelte 5でコンポーネント間の状態を共有する方法は主に2つあります。 props(親から子へ渡す)と store(どこからでも参照できる共有ファイル)です。 それぞれの実装方法と使い分けの判断基準を整理します。
Svelte 5からリアクティビティの仕組みが「ルーン(Rune)」という新しい方式に変わりました。 $state・$derived・$effect の3つを中心に、実際に動かしながら挙動を整理します。
ローカルで動作確認済みのGitHub OAuth認証をCloudflare Workersにデプロイする際、環境変数まわりで複数の躓きポイントがありました。 同じ構成(SvelteKit + adapter-cloudflare + …
固定パスワードによる簡易認証をGitHub OAuthを使った本格的な認証に置き換えました。 Arcticライブラリを使ってOAuthの実装をシンプルに保ちつつ、セッション管理にはCloudflare D1を使っています。
D1(CloudflareのSQLite)を導入したSvelteKitプロジェクトをCloudflare Pagesにデプロイしました。 ローカルで動作確認済みでも、デプロイ時にD1まわりでハマりやすい点があるため、手順とトラブルシューティ …
$lib/posts.ts に書いていた静的なデータをCloudflare D1(サーバーレスSQLite)に移行しました。 この記事ではDB作成からマイグレーション、SvelteKit側でのデータ取得までの手順をまとめます。
SvelteKitプロジェクトにTailwindCSS v4を導入しました。 v4はVite専用プラグインが用意されており、v3と比べて設定が大幅にシンプルになっています。