Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/nubskr/walrus/llms.txt

Use this file to discover all available pages before exploring further.

Distributed Log Streaming Engine

Build fault-tolerant streaming systems with automatic load balancing, Raft consensus, and high-performance storage built from first principles.

Walrus mascot

Quick Start

Get Walrus running in minutes

1

Install from crates.io

Add Walrus to your Rust project:
Cargo.toml
[dependencies]
walrus-rust = "0.2.0"
2

Create a WAL instance

Initialize Walrus and write your first entry:
use walrus_rust::Walrus;

let wal = Walrus::new()?;
wal.append_for_topic("my-topic", b"Hello, Walrus!")?;
3

Read from the log

Consume entries from your topic:
if let Some(entry) = wal.read_next("my-topic", true)? {
    println!("Read: {:?}", String::from_utf8_lossy(&entry.data));
}

Key Features

What makes Walrus different

Automatic Load Balancing

Segment-based leadership rotation distributes load across cluster nodes automatically

Raft Consensus

Fault-tolerant metadata coordination ensures consistency across distributed nodes

High Performance

io_uring on Linux delivers over 1M writes/sec with batch operations

Write Fencing

Lease-based write fencing prevents split-brain during leadership changes

Batch Operations

Atomic batch writes and reads with guaranteed all-or-nothing semantics

Flexible Consistency

Choose between strict and relaxed consistency models for your use case

Explore by Topic

Choose your path through the documentation

Core Concepts

Understand Walrus architecture, topics, segments, and consensus

Standalone Library

Use Walrus as an embedded storage engine in your application

Distributed Cluster

Deploy a fault-tolerant streaming cluster with Raft consensus

Operations Guide

Configure, monitor, and tune your Walrus deployment

API Reference

Browse the complete library, CLI, and cluster API documentation

Benchmarks

See performance comparisons with Kafka and RocksDB

Resources

Additional materials and community

Formal Verification

TLA+ specification with verified invariants and liveness properties

Contributing Guide

Learn how to contribute patches and improvements to Walrus

Changelog

Track new features, improvements, and fixes across versions

GitHub Repository

Browse source code, open issues, and star the project

Ready to get started?

Follow our quickstart guide to build your first streaming application with Walrus in minutes.

Start Building