Maelstrom

Framework
Maelstrom
Publisher
Jetify
{
  "packages": [
    "graphviz",
    "gnuplot",
    "ruby_3_1",
    "curl",
    "glow",
    "openjdk17@latest"
  ],
  "shell": {
    "init_hook": [
      "clear",
      "echo 'Welcome to the Maelstrom in Devbox Shell! \n * Type `devbox run help` to get started.\n * Type `devbox run install` to install Maelstrom.\n * After installing Maelstrom, type `devbox run docs` to browse the Maelstrom docs.'"
    ],
    "scripts": {
      "install": [
        "tar xjf <(curl -L -k https://github.com/jepsen-io/maelstrom/releases/download/v0.2.2/maelstrom.tar.bz2)"
      ],
      "help": [
        "glow README.md"
      ],
      "docs": [
        "glow maelstrom/doc"
      ]
    }
  }
}

Maelstrom

Open In Devbox.sh

A Devbox for running Maelstrom Tests. Maelstrom is a testing library for toy distributed systems built by @aphyr, useful for learning the basics and principals of building distributed systems

You should also check out the Fly.io Distributed Systems Challenge

Prerequisites

If you don't already have Devbox, you can install it by running the following command:

curl -s https://get.jetify.com/install.sh | bash

You can skip this step if you're running on Devbox.sh

Usage

  1. Install Maelstrom by running devbox run install. This should install Maelstrom 0.2.2 in a maelstrom subdirectory

  2. cd into the maelstrom directory and run ./maelstrom to verify everything is working

  3. You can now follow the docs and run the tests in the Maelstrom Docs + Readme. You can use glow from the command line to browse the docs.

This shell includes Ruby 3.10 for running the Ruby Demos. To run demos in other languages, install the appropriate runtimes using devbox add. For example, to run the Python demos, use devbox add python310.

README.md

Level up your dev environment

Checkout the Devbox and Launchpad open-source codebases on Github. Feature requests are always welcome.
Try Devbox Cloud
YOUR INPUT COUNTS

Join the community

Discuss ideas, uses and builds with the Jetpack team and others.