Conflict-free Replicated Data Types for Embedded Systems
A comprehensive Rust library providing memory-efficient, real-time CRDTs designed specifically for safety-critical embedded systems in automotive, robotics, IoT, and industrial domains.
Fixed-size arrays and compile-time memory allocation for predictable embedded systems performance.
Bounded execution times and deterministic operations suitable for hard real-time constraints.
ASIL-compliant implementations with comprehensive validation and error handling.
Lock-free concurrent operations using hardware atomic primitives for multi-core systems.
Specialized CRDTs for automotive, robotics, IoT, and industrial automation use cases.
Configurable memory limits with compile-time validation and runtime monitoring.
Grow-only counter for increment operations
Increment/decrement counter with dual arrays
Last-writer-wins register with timestamps
Multi-value register for concurrent updates
Grow-only set for add-only operations
Observed-remove set with add/remove support
Last-writer-wins map for key-value storage
Safety-critical sensor fusion, ASIL-compliant data structures, and real-time vehicle coordination.
Learn More →Multi-robot coordination, shared mapping, status synchronization, and signal coordination.
Learn More →Device registries, sensor networks, distributed data collection, and edge computing.
Learn More →Equipment monitoring, process control, maintenance scheduling, and factory automation.
Learn More →[dependencies]
crdtosphere = { version = "0.1.0", features = ["hardware-atomic"] }
use crdtosphere::prelude::*;
// Create a grow-only counter
let mut counter = GCounter::<DefaultConfig>::new(1);
counter.increment()?;
assert_eq!(counter.value(), 1);
// Create a last-writer-wins register
let mut register = LWWRegister::<i32, DefaultConfig>::new(1);
register.set(42, 1000)?;
assert_eq!(register.get(), Some(&42));