Python bindings for [Loro](https://loro.dev)
Project Links
Meta
Author: leon7hao
Requires Python: >=3.8
Classifiers
Programming Language
- Rust
- Python :: Implementation :: CPython
- Python :: Implementation :: PyPy
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
- Clone the repository
git clone https://github.com/loro-dev/loro-py
cd loro-py
- Install development dependencies and run
# choose your python venv
pip install maturin
maturin develop
1.8.2
Oct 23, 2025
1.8.1
Sep 23, 2025
1.6.0
Aug 31, 2025
1.5.4
Aug 14, 2025
1.5.3
Jul 23, 2025
1.5.2
Jun 23, 2025
1.5.1
May 15, 2025
1.5.1a0
May 14, 2025
1.5.0
Apr 04, 2025
1.4.2
Mar 03, 2025
1.4.1
Feb 24, 2025
1.4.0
Feb 14, 2025
1.3.4
Feb 12, 2025
1.3.3
Feb 12, 2025
1.3.2
Jan 20, 2025
1.3.1
Jan 16, 2025
1.3.0
Jan 15, 2025
1.2.7a0
Jan 08, 2025
1.2.5b1
Jan 05, 2025
1.2.5b0
Jan 05, 2025
1.2.5a0
Jan 03, 2025
0.0.1
Feb 13, 2024
Wheel compatibility matrix
Files in release
loro-1.8.2-cp310-cp310-macosx_10_12_x86_64.whl (3.0MiB)
loro-1.8.2-cp310-cp310-macosx_11_0_arm64.whl (2.8MiB)
loro-1.8.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.0MiB)
loro-1.8.2-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (3.1MiB)
loro-1.8.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (3.4MiB)
loro-1.8.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl (3.2MiB)
loro-1.8.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.0MiB)
loro-1.8.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl (3.4MiB)
loro-1.8.2-cp310-cp310-musllinux_1_2_aarch64.whl (3.2MiB)
loro-1.8.2-cp310-cp310-musllinux_1_2_armv7l.whl (3.3MiB)
loro-1.8.2-cp310-cp310-musllinux_1_2_i686.whl (3.4MiB)
loro-1.8.2-cp310-cp310-musllinux_1_2_x86_64.whl (3.3MiB)
loro-1.8.2-cp310-cp310-win32.whl (2.5MiB)
loro-1.8.2-cp310-cp310-win_amd64.whl (2.6MiB)
loro-1.8.2-cp311-cp311-macosx_10_12_x86_64.whl (3.0MiB)
loro-1.8.2-cp311-cp311-macosx_11_0_arm64.whl (2.8MiB)
loro-1.8.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.0MiB)
loro-1.8.2-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (3.1MiB)
loro-1.8.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (3.4MiB)
loro-1.8.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl (3.1MiB)
loro-1.8.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.0MiB)
loro-1.8.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl (3.4MiB)
loro-1.8.2-cp311-cp311-musllinux_1_2_aarch64.whl (3.2MiB)
loro-1.8.2-cp311-cp311-musllinux_1_2_armv7l.whl (3.3MiB)
loro-1.8.2-cp311-cp311-musllinux_1_2_i686.whl (3.4MiB)
loro-1.8.2-cp311-cp311-musllinux_1_2_x86_64.whl (3.3MiB)
loro-1.8.2-cp311-cp311-win32.whl (2.5MiB)
loro-1.8.2-cp311-cp311-win_amd64.whl (2.6MiB)
loro-1.8.2-cp312-cp312-macosx_10_12_x86_64.whl (3.0MiB)
loro-1.8.2-cp312-cp312-macosx_11_0_arm64.whl (2.8MiB)
loro-1.8.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.0MiB)
loro-1.8.2-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (3.1MiB)
loro-1.8.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (3.4MiB)
loro-1.8.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl (3.2MiB)
loro-1.8.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.1MiB)
loro-1.8.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl (3.4MiB)
loro-1.8.2-cp312-cp312-musllinux_1_2_aarch64.whl (3.2MiB)
loro-1.8.2-cp312-cp312-musllinux_1_2_armv7l.whl (3.3MiB)
loro-1.8.2-cp312-cp312-musllinux_1_2_i686.whl (3.4MiB)
loro-1.8.2-cp312-cp312-musllinux_1_2_x86_64.whl (3.3MiB)
loro-1.8.2-cp312-cp312-win32.whl (2.5MiB)
loro-1.8.2-cp312-cp312-win_amd64.whl (2.6MiB)
loro-1.8.2-cp313-cp313-macosx_10_12_x86_64.whl (3.0MiB)
loro-1.8.2-cp313-cp313-macosx_11_0_arm64.whl (2.8MiB)
loro-1.8.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.0MiB)
loro-1.8.2-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (3.1MiB)
loro-1.8.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (3.4MiB)
loro-1.8.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl (3.2MiB)
loro-1.8.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.1MiB)
loro-1.8.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl (3.4MiB)
loro-1.8.2-cp313-cp313-musllinux_1_2_aarch64.whl (3.2MiB)
loro-1.8.2-cp313-cp313-musllinux_1_2_armv7l.whl (3.3MiB)
loro-1.8.2-cp313-cp313-musllinux_1_2_i686.whl (3.4MiB)
loro-1.8.2-cp313-cp313-musllinux_1_2_x86_64.whl (3.3MiB)
loro-1.8.2-cp313-cp313-win32.whl (2.5MiB)
loro-1.8.2-cp313-cp313-win_amd64.whl (2.6MiB)
loro-1.8.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.0MiB)
loro-1.8.2-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (3.1MiB)
loro-1.8.2-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (3.4MiB)
loro-1.8.2-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl (3.2MiB)
loro-1.8.2-cp313-cp313t-musllinux_1_2_aarch64.whl (3.2MiB)
loro-1.8.2-cp313-cp313t-musllinux_1_2_armv7l.whl (3.3MiB)
loro-1.8.2-cp313-cp313t-musllinux_1_2_i686.whl (3.4MiB)
loro-1.8.2-cp313-cp313t-musllinux_1_2_x86_64.whl (3.3MiB)
loro-1.8.2-cp314-cp314-macosx_10_12_x86_64.whl (3.0MiB)
loro-1.8.2-cp314-cp314-macosx_11_0_arm64.whl (2.8MiB)
loro-1.8.2-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.0MiB)
loro-1.8.2-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl (3.4MiB)
loro-1.8.2-cp314-cp314-win32.whl (2.5MiB)
loro-1.8.2-cp314-cp314-win_amd64.whl (2.6MiB)
loro-1.8.2-cp38-cp38-macosx_10_12_x86_64.whl (3.0MiB)
loro-1.8.2-cp38-cp38-macosx_11_0_arm64.whl (2.8MiB)
loro-1.8.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.0MiB)
loro-1.8.2-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (3.1MiB)
loro-1.8.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (3.4MiB)
loro-1.8.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl (3.2MiB)
loro-1.8.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.1MiB)
loro-1.8.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl (3.4MiB)
loro-1.8.2-cp38-cp38-musllinux_1_2_aarch64.whl (3.2MiB)
loro-1.8.2-cp38-cp38-musllinux_1_2_armv7l.whl (3.3MiB)
loro-1.8.2-cp38-cp38-musllinux_1_2_i686.whl (3.4MiB)
loro-1.8.2-cp38-cp38-musllinux_1_2_x86_64.whl (3.3MiB)
loro-1.8.2-cp38-cp38-win32.whl (2.5MiB)
loro-1.8.2-cp38-cp38-win_amd64.whl (2.6MiB)
loro-1.8.2-cp39-cp39-macosx_10_12_x86_64.whl (3.0MiB)
loro-1.8.2-cp39-cp39-macosx_11_0_arm64.whl (2.8MiB)
loro-1.8.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.0MiB)
loro-1.8.2-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (3.1MiB)
loro-1.8.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (3.4MiB)
loro-1.8.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl (3.2MiB)
loro-1.8.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.1MiB)
loro-1.8.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl (3.4MiB)
loro-1.8.2-cp39-cp39-musllinux_1_2_aarch64.whl (3.2MiB)
loro-1.8.2-cp39-cp39-musllinux_1_2_armv7l.whl (3.3MiB)
loro-1.8.2-cp39-cp39-musllinux_1_2_i686.whl (3.4MiB)
loro-1.8.2-cp39-cp39-musllinux_1_2_x86_64.whl (3.3MiB)
loro-1.8.2-cp39-cp39-win32.whl (2.5MiB)
loro-1.8.2-cp39-cp39-win_amd64.whl (2.6MiB)
loro-1.8.2-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.0MiB)
loro-1.8.2-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (3.1MiB)
loro-1.8.2-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (3.4MiB)
loro-1.8.2-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl (3.2MiB)
loro-1.8.2-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl (3.2MiB)
loro-1.8.2-pp310-pypy310_pp73-musllinux_1_2_armv7l.whl (3.3MiB)
loro-1.8.2-pp310-pypy310_pp73-musllinux_1_2_i686.whl (3.4MiB)
loro-1.8.2-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl (3.3MiB)
loro-1.8.2-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.0MiB)
loro-1.8.2-pp311-pypy311_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (3.1MiB)
loro-1.8.2-pp311-pypy311_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (3.4MiB)
loro-1.8.2-pp311-pypy311_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl (3.2MiB)
loro-1.8.2-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.0MiB)
loro-1.8.2-pp311-pypy311_pp73-manylinux_2_5_i686.manylinux1_i686.whl (3.4MiB)
loro-1.8.2-pp311-pypy311_pp73-musllinux_1_2_aarch64.whl (3.2MiB)
loro-1.8.2-pp311-pypy311_pp73-musllinux_1_2_armv7l.whl (3.3MiB)
loro-1.8.2-pp311-pypy311_pp73-musllinux_1_2_i686.whl (3.4MiB)
loro-1.8.2-pp311-pypy311_pp73-musllinux_1_2_x86_64.whl (3.3MiB)
loro-1.8.2-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.0MiB)
loro-1.8.2-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (3.1MiB)
loro-1.8.2-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (3.4MiB)
loro-1.8.2-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl (3.2MiB)
loro-1.8.2-pp39-pypy39_pp73-musllinux_1_2_aarch64.whl (3.2MiB)
loro-1.8.2-pp39-pypy39_pp73-musllinux_1_2_armv7l.whl (3.3MiB)
loro-1.8.2-pp39-pypy39_pp73-musllinux_1_2_i686.whl (3.4MiB)
loro-1.8.2-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl (3.3MiB)
loro-1.8.2.tar.gz (66.2KiB)
No dependencies