SvelteKitの +layout.svelte の応用パターンを整理します。ネストしたレイアウト・レイアウトデータの取得・ルートグループ・レイアウト無効化を解説します。
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のログインを実装する中で、複数の種類のトークンが登場しました。 それぞれの役割・寿命・保存場所が異なるため、整理してまとめます。
固定パスワードによる簡易認証をGitHub OAuthを使った本格的な認証に置き換えました。 Arcticライブラリを使ってOAuthの実装をシンプルに保ちつつ、セッション管理にはCloudflare D1を使っています。
D1(CloudflareのSQLite)を導入したSvelteKitプロジェクトをCloudflare Pagesにデプロイしました。 ローカルで動作確認済みでも、デプロイ時にD1まわりでハマりやすい点があるため、手順とトラブルシューティ …