分散型でオフラインファースト、エンドツーエンド暗号化に対応したアプリを構築するための、JavaScript製グラフ同期エンジン兼ツールキット。ピア間で同期します。
loro-dev/loro
JSON風のアプリデータを共同編集・マージ・バージョン管理できる、Rust製CRDTライブラリ(JS/WASM・Swiftバインディング付き)。
- スター
- 6,238
- フォーク
- 193
- 未解決の Issue
- 66
- 最終コミット
- 22 時間前
これは何?
Loroは、ローカルファーストや共同作業に対応したアプリケーションを構築するためのCRDT(Conflict-free Replicated Data Type)ライブラリです。各ピアでドキュメントをオフライン編集でき、ピア同士が同期すると自動的にマージされるため、競合の解決を中央サーバーに委ねる必要はありません。
このライブラリは、Fugueアルゴリズムに基づくテキスト編集、リッチテキストCRDT、移動可能なツリーとリスト、Last-write-winsマップなど、複数のデータ型を提供します。ドキュメントは差分更新、高速読み込み、履歴をたどるタイムトラベル、Gitのshallow cloneのように動作する浅いスナップショットに対応しています。
LoroはRustで書かれており、Rustから直接利用できるほか、WebAssembly経由のJavaScript(loro-crdt npmパッケージ)やSwiftからも利用できます。その他の言語はloro-ffiプロジェクトでサポートされています。
主な機能
- 01ピア間の同時編集を自動でマージ
- 02Fugueに基づくテキスト編集とリッチテキストCRDT
- 03移動可能なツリーとリストのデータ型
- 04ドキュメントの履歴をたどるタイムトラベル
- 05Gitのshallow cloneに似た浅いスナップショット
- 06変更分のみを同期する差分更新
ユースケース
- 中央のマージサーバーを使わずに、JSONベースのアプリへリアルタイム共同編集を追加する
- オフラインファーストのメモアプリやドキュメントエディターを構築し、後から同期する
- 履歴の閲覧に対応した、構造化アプリデータのバージョン管理
- WebアプリやSwiftアプリでのリッチテキスト共同編集
クイックスタート
- 1
READMEにリンクされているGetting Startedチュートリアルを開きます
- 2
READMEの例のように、JSプロジェクトでloro-crdtパッケージからLoroDocとLoroListをインポートします
収録されている特集
トピック
よくある質問
- loro とは?
- JSON風のアプリデータを共同編集・マージ・バージョン管理できる、Rust製CRDTライブラリ(JS/WASM・Swiftバインディング付き)。 Loroは、ローカルファーストや共同作業に対応したアプリケーションを構築するためのCRDT(Conflict-free Replicated Data Type)ライブラリです。各ピアでドキュメントをオフライン編集でき、ピア同士が同期すると自動的にマージされるため、競合の解決を中央サーバーに委ねる必要はありません。
- loro は無料で使えますか?ライセンスは?
- loro は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- loro は今もメンテナンスされていますか?
- 活発にメンテナンス中。loro の最終コミットは 2026年10月22日 です。
- loro は何に使えますか?
- 中央のマージサーバーを使わずに、JSONベースのアプリへリアルタイム共同編集を追加する オフラインファーストのメモアプリやドキュメントエディターを構築し、後から同期する 履歴の閲覧に対応した、構造化アプリデータのバージョン管理 WebアプリやSwiftアプリでのリッチテキスト共同編集
- loro のインストール方法は?
- READMEにリンクされているGetting Startedチュートリアルを開きます READMEの例のように、JSプロジェクトでloro-crdtパッケージからLoroDocとLoroListをインポートします
- loro はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/loro-dev/loro
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
ドキュメント、ホワイトボード、テーブルを1つのワークスペースに統合する、NotionやMiroに代わるローカルファーストのオープンソース知識ベース。
ブラウザー、Node.js、React Native、Electronで動作し、自前のバックエンドとレプリケーションできる、JavaScriptアプリ向けのローカルファーストなリアクティブNoSQLデータベース。
ブラウザ、Node.js、Bun、Denoで動作する、TypeScriptライブラリとして提供されたPostgresの埋め込み可能なWASMビルド。
ビューアー、発表者ツール、エディターを内蔵した自己完結型HTMLファイルで提供されるPowerPointの代替ツール。
Table Habitは、WebDAV同期とオフライン優先の保存に対応した、マイクロ習慣向けの無料・オープンソースのFlutter習慣トラッカーです。