ブラウザー、Node.js、React Native、Electronで動作し、自前のバックエンドとレプリケーションできる、JavaScriptアプリ向けのローカルファーストなリアクティブNoSQLデータベース。
dexie/Dexie.js
ブラウザー標準搭載のデータベースIndexedDBを、使いやすいクエリAPIで扱える軽量なTypeScriptラッパー。
- スター
- 14,658
- フォーク
- 719
- 未解決の Issue
- 584
- 最終コミット
- 一昨日
これは何?
Dexie.jsは、最新のブラウザーに標準搭載されているクライアントサイドデータベースIndexedDBをラップし、テーブルの定義、データの書き込み、クエリの実行を簡単にします。スキーマは簡潔なバージョン付き構文で宣言でき、インデックス、範囲、フィルター、一括操作に対応したチェーン可能なAPIでクエリを記述できます。
さまざまなIndexedDB実装のバグを回避し、ブラウザー間で一貫した動作を実現します。通常のWebアプリやPWAで動作するほか、ElectronデスクトップアプリやCapacitorベースのiOS/Androidアプリでも利用できます。型定義が含まれており、npm経由またはscriptタグで読み込めます。
リアルタイム同期、認証、コラボレーションには、別アドオンのDexie Cloudを利用できます。ホステッドサービスとしても、セルフホストでも運用できます。
主な機能
- 01IndexedDBのテーブルに対し、インデックス、範囲、フィルターを扱えるチェーン可能なクエリAPI。
- 02簡潔な文字列構文で記述するバージョン付きスキーマ宣言。
- 03書き込みを高速化するbulkPutやbulkAddなどの一括操作。
- 04ブラウザー固有のIndexedDBのバグを回避し、より安定した動作を実現。
- 05ブラウザー、Electron、Capacitorアプリに対応し、TypeScriptの型定義も同梱。
- 06同期と認証に使えるオプションのDexie Cloudアドオン。
ユースケース
- ブラウザー内にデータをローカル保存する、オフライン対応PWAの開発。
- ネットワーク通信を減らすため、APIレスポンスやユーザーデータをクライアント側にキャッシュ。
- ElectronデスクトップアプリやCapacitorモバイルアプリでのアプリデータの保存。
- Dexie Cloudを使い、既存のWebアプリにローカルファーストな同期機能を追加。
クイックスタート
- 1
npmからDexieをインストールする
npm install dexie - 2
データベースとテーブルを宣言し、アプリのコードからクエリを実行する(READMEのHello Worldの例を参照)
使う前に知っておきたいこと
- DexieはIndexedDBをラップしているため、ブラウザー、Electron、Capacitorなどのブラウザーに似た環境でのみ動作します。
収録されている特集
トピック
よくある質問
- Dexie.js とは?
- ブラウザー標準搭載のデータベースIndexedDBを、使いやすいクエリAPIで扱える軽量なTypeScriptラッパー。 Dexie.jsは、最新のブラウザーに標準搭載されているクライアントサイドデータベースIndexedDBをラップし、テーブルの定義、データの書き込み、クエリの実行を簡単にします。スキーマは簡潔なバージョン付き構文で宣言でき、インデックス、範囲、フィルター、一括操作に対応したチェーン可能なAPIでクエリを記述できます。
- Dexie.js は無料で使えますか?ライセンスは?
- Dexie.js は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- Dexie.js は今もメンテナンスされていますか?
- 活発にメンテナンス中。Dexie.js の最終コミットは 2026年10月21日 です。
- Dexie.js は何に使えますか?
- ブラウザー内にデータをローカル保存する、オフライン対応PWAの開発。 ネットワーク通信を減らすため、APIレスポンスやユーザーデータをクライアント側にキャッシュ。 ElectronデスクトップアプリやCapacitorモバイルアプリでのアプリデータの保存。 Dexie Cloudを使い、既存のWebアプリにローカルファーストな同期機能を追加。
- Dexie.js のインストール方法は?
- npmからDexieをインストールする: npm install dexie データベースとテーブルを宣言し、アプリのコードからクエリを実行する(READMEのHello Worldの例を参照)
- Dexie.js はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/dexie/Dexie.js
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
ブラウザ、Node.js、Bun、Denoで動作する、TypeScriptライブラリとして提供されたPostgresの埋め込み可能なWASMビルド。
ストレージとコンピュートを分離し、自動スケーリング、データベースのブランチ作成、スケール・トゥ・ゼロに対応するオープンソースのサーバーレスPostgres。
WebAssemblyで文書をローカル処理する、ブラウザベースのWord・Excel・PowerPointビューア兼エディタ。
ローカルのMP4に字幕を付けて編集・装飾し、焼き込んで書き出せるブラウザベースの字幕編集ツール。Whisperによる端末内文字起こしにも対応。
macOS、Windows、Linux対応のオフラインファーストなデスクトップ写真管理アプリ。ローカルAI検索、顔のクラスタリング、大規模ライブラリの重複整理に対応。