---
title: "Prerequisites"
description: "Install Rust, Just, Foundry, build essentials, and optionally Docker before working on base/base."
source: https://basehub.org/getting-started/prerequisites/
---
Building or developing on `base/base` requires Rust, Just, Foundry, a C/C++ toolchain, and optionally Docker. Instructions below target Linux (Debian/Ubuntu); macOS users can substitute `brew install` where applicable.

## Rust

The project requires **Rust 1.88 or later**. The recommended way to install and manage Rust toolchains is through [rustup](https://rustup.rs/):

```bash
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```

Follow the on-screen prompts and then reload your shell:

```bash
source "$HOME/.cargo/env"
```

Verify the installed version:

```bash
rustc --version
# rustc 1.88.0 (or later)
```

If you already have Rust installed, make sure it is up to date:

```bash
rustup update
```

## Just

[Just](https://github.com/casey/just) is a command runner used throughout the project for build, test, and devnet workflows. Install it with one of:

```bash
# Using cargo (works everywhere Rust is installed)
cargo install just

# Debian/Ubuntu
sudo apt install just

# macOS (Homebrew)
brew install just
```

Confirm the installation:

```bash
just --version
```

## Foundry

[Foundry](https://book.getfoundry.sh/) is required for compiling the Solidity test contracts used by several crates. Install via the official installer:

```bash
curl -L https://foundry.paradigm.xyz | bash
```

Then run:

```bash
foundryup
```

This gives you `forge`, `cast`, `anvil`, and `chisel`. Verify with:

```bash
forge --version
```

## Build Essentials

A standard C/C++ toolchain and a few system libraries are needed to compile native dependencies:

```bash
# Debian / Ubuntu
sudo apt update
sudo apt install -y git libclang-dev pkg-config curl build-essential
```

```bash
# macOS (Xcode Command Line Tools provide clang and related headers)
xcode-select --install
brew install pkg-config
```

## Docker (Optional)

Docker is only required if you plan to build container images or run the local devnet. Install Docker Engine by following the [official instructions](https://docs.docker.com/engine/install/) for your platform, or on Ubuntu:

```bash
sudo apt install -y docker.io
sudo systemctl enable --now docker
sudo usermod -aG docker "$USER"
```

Log out and back in for the group change to take effect, then verify:

```bash
docker --version
docker compose version
```

The devnet uses Docker Compose (the `docker compose` plugin, not the legacy `docker-compose` binary).

## Quick Check

Once everything is installed, you can run a quick sanity check from the repository root:

```bash
rustc --version && cargo --version && just --version && forge --version && git --version
```

All five commands should succeed and print version information. With these prerequisites in place, proceed to [Building from Source](/getting-started/building/).
