Oven logo

Oven

loro1.5.1

Published

Python bindings for [Loro](https://loro.dev)

pip install loro

Package Downloads

Weekly DownloadsMonthly Downloads

Authors

leon7hao

Requires Python

>=3.8

Dependencies

    PyPI version License

    loro-py

    Python bindings for Loro CRDT. If you have any issues or suggestions, please feel free to create an issue or join our Discord community.

    Features

    • High-performance CRDT operations with Rust implementation
    • Rich data types support: Text, List, Map, Tree, Movable List, Counter
    • Python-friendly API design

    Installation

    pip install loro
    

    Quick Start

    from loro import LoroDoc
    
    # Create a new document
    doc = LoroDoc()
    # Get a text container
    text = doc.get_text("text")
    # Insert text
    text.insert(0, "Hello, Loro!")
    # store the `subscription` reference to prevent garbage collection
    sub = doc.subscribe_root(lambda e: print(e))
    doc.commit()
    

    Development

    Prerequisites

    • Python 3.8+
    • Rust toolchain
    • maturin

    Setup Development Environment

    1. Clone the repository
    git clone https://github.com/loro-dev/loro-py
    cd loro-py
    
    1. Install development dependencies and run
    # choose your python venv
    pip install maturin
    maturin develop