Loro

Protocolo de Datos Descentralizado

A CRDT (conflict-free replicated data type) library for local-first, real-time collaborative software. An application models its state as Loro's JSON-like collaborative types (text with Fugue-based merging, rich text, movable lists, movable trees, last-write-wins maps and counters); any number of peers edit independently and offline, export their updates as bytes, send them over any channel, and import the other side's updates to converge on the same state. Loro also keeps the full editing history, so a document can be time-travelled or branched like a version-controlled repository, and a shallow snapshot lets a document drop old history the way a shallow git clone does. It is a library, not a network: the project supplies the data structures and encoding, and the application chooses the transport. Available in Rust, JavaScript (via WebAssembly) and Swift, with bindings for other languages in a separate repository .

Empresa

Detalles

Licencia Permissive (MIT). https://github.com/loro-dev/loro (Rust core, JavaScript/WASM package, Swift); https://github.com/loro-dev/loro-ffi (bindings for other languages)
Estado de Desarrollo 🟢 Activo
Propietario Created in 2022 by Zixuan Chen and Leon Zhao, who are named on the project's About page as its contacts; the cited sources name no company, foundation or legal entity behind it
Órgano de Gobierno The founding maintainers (Zixuan Chen and Leon Zhao); no foundation or formal governance is described in the cited sources
País Not stated by the project.
Año de Inicio 2022
Stack Rust core compiled to WebAssembly for JavaScript and TypeScript; Swift bindings; other languages through loro-ffi; npm package loro-crdt; a browser-based Loro Inspector for viewing a document's state and history
Financiamiento GitHub Sponsors are shown on the repository; no other funding source is stated by the project
Última Investigación 29 oct 2026

Vista de topología

Esta herramienta en el centro y lo que se relaciona directamente con ella. Cada línea nombra el tipo de relación.

Vista de topología: LoroEsta herramienta en el centro y lo que se relaciona directamente con ella. Cada línea nombra el tipo de relación.LoroAutomerge (Basado en)Automerge

Abrir en el Explorador de grafo

Capacidades

Almacenamiento local-first Edición libre de conflictos Historial de versiones

Protocolo de Datos Descentralizado Atributos

Orígenes Local-first software: built to make collaborative, offline-capable applications easy, with the Event Graph Walker (Eg-walker) merge algorithm adapted from Joseph Gentle's diamond-types, columnar encoding ideas from Automerge, merge behaviour similar to Yjs, and the Fugue text algorithm from Matthew Weidner's work, all credited by the project
Base de Datos N/A: not a database. Loro is an in-memory document library; the application persists documents by exporting snapshots or updates as bytes to storage of its choice
Lenguaje de Consulta JSONPath queries over a document (Loro lists a JSONPath feature in its documentation); otherwise documents are used as native language objects
Formatos de Datos A binary snapshot and update encoding for documents, shallow snapshots, and a JSON view (toJSON) of the current state
Edición Colaborativa en Vivo Collaborative real-time editing (CRDTs): concurrent edits from any number of peers merge deterministically, both live and after offline work; an ephemeral store carries presence data such as cursors
Edición de Texto Enriquecido Rich text editing: a rich-text CRDT with its own design write-up, and Fugue-based plain-text merging
Soporte Móvil Library-level: Swift bindings for iOS and macOS; WebAssembly in mobile browsers; other bindings through loro-ffi
Soporte Web Yes: the JavaScript/WebAssembly package is the main surface, with a browser inspector tool
Aplicaciones Nativas Library-level: the Rust crate embeds in native applications; Swift bindings exist
Términos Free and open source (MIT); no hosted service is required
Fondos Not stated by the project.
Basado En CRDT research and prior libraries: the Event Graph Walker algorithm (diamond-types), Fugue, and ideas from Automerge and Yjs, all credited by the project
Arquitectura P2P Transport-agnostic peer-to-peer synchronisation: peers exchange exported updates over any method the application provides, with no central coordinator needed to merge; the library implements no network layer of its own
Red de Superposición None: Loro defines no network. Synchronisation is scoped to a document shared among the peers that hold it
Direccionamiento por Contenido No: operations carry peer and counter identifiers within a causal graph; documents are not addressed by content hash
Local-First Local-First: the project describes itself as built for local-first software; each peer holds a full replica and edits offline, merging when updates are exchanged
Cifrado de Extremo a Extremo (E2EE) No: Loro does not encrypt documents itself; confidentiality is left to the transport or the embedding application
Biblioteca de CRDTs Loro: this entry is the library. Rust core with JavaScript/WASM and Swift bindings, plus loro-ffi for other languages
Tolerancia a Fallos Bizantinos No: CRDT merging assumes cooperating peers; the cited sources describe no defence against a peer that submits malformed or malicious operations
Firma N/A: operations are identified by peer ID and counter; the library does not sign them
Permisos N/A: no access-control model; any peer holding a document can edit it
Compatibilidad con la Web Semántica N/A: JSON-like document model with no RDF, JSON-LD or SPARQL layer
Contrato Inteligente N/A: no ledger or contract component
Posición en la Pila del Protocolo Application-layer: an in-process data-structure library that is independent of the transport
Incorporación de Activos/Valor None: no token or value-transfer mechanism
Madurez del Protocolo / Estandarización Library at version 1.x with documented concepts and a stable-looking release cadence; no standards-body involvement and no separate wire specification was found in the cited sources, so the Rust implementation is effectively the reference

Relaciones

Cómo se conecta esta herramienta con otras herramientas y organizaciones, según relaciones revisadas por el responsable de datos de OpenHaven. Describen cómo se conectan los proyectos, no su calidad.

Basado en