Eips is a Rust library that provides an intention-preserving sequence conflict-free replicated data type (CRDT). It is designed for use cases where maintaining consistent and collaborative sequences of items is necessary, with each item in the sequence assigned a unique identifier. The library is suitable for developers building distributed or collaborative systems where sequence operations need to be reliably synchronized across multiple clients.
The Eips struct supports a range of sequence operations, including inserting, removing, moving items, and retrieving items by index or identifier. These operations are designed with explicit time and space complexity considerations, such as Θ(log h) time for most operations and Θ(h) space complexity, where h is the total number of items ever inserted. The library allows for the application of remote changes, enabling synchronization between distributed instances. It also provides methods to serialize the sequence for sending to new clients or saving to disk, though serialization is intended only for initializing a new Eips instance and not for merging concurrent changes from multiple sources. Additional features include the ability to check if the sequence is empty, get the number of non-deleted items, and iterate over all changes in the sequence. The options parameter allows for customization of memory usage and feature support, such as enabling move operations.
Eips is delivered as a Rust crate, installable via the Rust package ecosystem, and is documented for multiple platforms including various Linux, Windows, and macOS targets. 0-or-later, which requires derivative works to be distributed under the same license. The documentation indicates dependencies on several other Rust crates and mentions support for serialization through the serde library.
This tool is intended for developers who need a robust, intention-preserving sequence CRDT for distributed or collaborative applications in Rust.
Eips in eips is a Frameworks & SDKs product. Enabling developers to implement intention-preserving sequence CRDTs in distributed systems using Rust. It is built as an open-source project for rust developers building distributed or collaborative applications. Eips in eips is open source under the AGPL-3.0 license. Eips in eips is available on the web and the command line, and it can be self-hosted.
Behind Eips in eips is taylordotfish, based in Serbia, and the product first shipped in 2021. Development happens publicly on GitHub with 108 stars and 6 commits in the last 90 days. PulseGate's similarity index finds few close equivalents — Eips in eips occupies a relatively distinct niche. Key capabilities include CRDT implementation, rust support, and intention-preserving.
Latest indexed changes and source events
Other apps tracked under the same category.