
よっしー
こんにちは。よっしーです(^^)
今日は、SvelteKitのリファレンスについて解説して います。
背景
SvelteKitのリファレンスについて調査する機会がありましたので、その時の内容を備忘として記事に残しました。
CLIツール(sv)
コマンドラインインターフェース(CLI)であるsvは、Svelteアプリケーションの作成と保守のためのツールキットです。
Drizzle ORMとは
Drizzle ORMは、リレーショナルおよびSQL風のクエリAPIを提供するTypeScript ORMで、サーバーレス環境での使用を前提に設計されています。
使用方法
npx sv add drizzle
導入するもの
- SvelteKitのサーバーファイル内でデータベースアクセスを管理する設定
- 認証情報を保存するための
.envファイル - Lucia認証アドオンとの互換性
- ローカルデータベース実行を支援するためのオプションのDocker設定
database
使用するデータベースのバリアント:
postgresql— 最も人気のあるオープンソースデータベースmysql— 別の人気のあるオープンソースデータベースsqlite— データベースサーバーを必要としないファイルベースのデータベース
npx sv add --drizzle=postgresql
client
使用するSQLクライアント(databaseに依存):
postgresqlの場合:postgres.js,neonmysqlの場合:mysql2,planetscalesqliteの場合:better-sqlite3,libsql,turso
npx sv add --drizzle=postgresql,postgres.js
Drizzleは10種類以上のデータベースドライバーと互換性があります。ここでは簡略化のため最も一般的なものを提供していますが、別のドライバーを使用したい場合は、プレースホルダーとして一つを選択し、Drizzleの互換性のあるドライバーの完全なリストから別のものに入れ替えることができます。
docker
Docker Compose設定を追加するかどうか。databaseがpostgresqlまたはmysqlの場合のみ利用可能
docker–docker-compose.ymlを生成no-docker– Dockerの設定を生成しない
npx sv add --drizzle=postgresql,postgres.js,docker
基本的なPostgreSQLセットアップ(Dockerあり)
npx sv add --drizzle=postgresql,postgres.js,docker
これにより、PostgreSQL、postgres.jsクライアント、Dockerのセットアップが含まれた環境が作成されます。
MySQLとPlanetscaleの組み合わせ
npx sv add --drizzle=mysql,planetscale
SQLiteとTursoの組み合わせ
npx sv add --drizzle=sqlite,turso
セットアップ後の一般的な流れ
- 生成された
.envファイルにデータベース接続情報を設定 - Dockerを使用する場合は
docker-compose up -dを実行 - スキーマファイルを編集(通常は
src/lib/server/schema.ts) - マイグレーションを実行(例:
npx drizzle-kit push:pg) - サーバーサイドのエンドポイントやルートでDrizzleクエリを記述
このアドオンにより、SvelteKitプロジェクトにDrizzle ORMを簡単に統合でき、タイプセーフなデータベースアクセスを実現できます。
おわりに
今日は、 SvelteKitのリファレンスについて解説しました。

よっしー
何か質問や相談があれば、コメントをお願いします。また、エンジニア案件の相談にも随時対応していますので、お気軽にお問い合わせください。
それでは、また明日お会いしましょう(^^)


コメント