Expand description

A Rust library that allows distributed applications to work with Maelstrom.

Maelstrom is a workbench for learning and testing distributed applications. It drives workloads to application nodes, and uses Jepsen to verify safety properties.

The library provides

  • a Msg implementation for creating and parsing workload and node-to-node message according to the Maelstrom message protocol
  • a Process trait for implementing application node processes
  • a Runtime for driving processes and communicating with the Maelstrom network

See the echo.rs for a simple library usage example.

Modules

Node process

Node runtime for Processes and Maelstrom networking

Enums

Errors the library may return to the application

Type Definitions

Maelstrom node address

Results for library functions that may fail

Status for library functions that may fail