Skip to main content
Version: 0.14 (unstable)

Installation

This guide walks you through installing the Miden development tools using the midenup toolchain manager.

Prerequisites

Install Rust

Miden development requires Rust. Install it using rustup:

>_ Terminal
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y

Reload your PATH environment variable:

>_ Terminal
. "$HOME/.cargo/env"

Verify the installation:

>_ Terminal
rustc --version
Expected output
rustc 1.92.0-nightly (fa3155a64 2025-09-30)

Install Node.js & Yarn

For TypeScript development with the Miden Web Client, you'll need Node.js and Yarn.

Install Node.js:

>_ Terminal
# Install Node.js using the official installer or package manager
# For macOS with Homebrew:
brew install node

# For Ubuntu/Debian:
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
sudo apt-get install -y nodejs

# For Windows, download from nodejs.org

Install Yarn:

>_ Terminal
# Install Yarn globally via npm
npm install -g yarn

Verify installations:

>_ Terminal
node --version && yarn --version
Expected output
v22.x.x  # or higher
1.22.x # or higher

Install Miden CLI

Install midenup

The Miden toolchain installer makes it easy to manage Miden components:

>_ Terminal
cargo install midenup

Until published to crates.io, install using: cargo install --git https://github.com/0xMiden/midenup.git

Initialize midenup

>_ Terminal
midenup init

This creates the $MIDENUP_HOME directory and sets up the miden command by creating a symlink in your Cargo bin directory ($CARGO_HOME/bin/, typically ~/.cargo/bin/). Since Rust users already have this directory in their PATH, no additional PATH configuration is needed.

Verify it works:

>_ Terminal
which miden
Expected output
/Users/<USERNAME>/.cargo/bin/miden    # macOS
/home/<USERNAME>/.cargo/bin/miden # Linux

Install Miden Toolchain

Install the latest stable Miden components:

>_ Terminal
midenup install stable

You may see No artifact found. Proceeding to install from source during installation. This is expected — it means pre-built binaries aren't available for your platform, so midenup compiles components from source. This can take 15-30 minutes.

Verify Installation

Check that everything is working correctly:

>_ Terminal
midenup show active-toolchain
Expected output
stable

Test by creating a new project:

>_ Terminal
miden new my-test-project
cd my-test-project

If successful, you'll see a new directory with Miden project files. The cd command enters the project directory, which you'll need for the following guides.

Troubleshooting

"miden: command not found"

Ensure $CARGO_HOME/bin (typically ~/.cargo/bin/) is in your PATH. This should already be configured if you installed Rust via rustup. Verify with:

>_ Terminal
echo $PATH | tr ':' '\n' | grep cargo

"config error: missing field" when running miden client commands

If you have config files from a previous Miden installation, they may be incompatible with the current version. Delete the old config and database, then re-initialize:

>_ Terminal
rm -f miden-client.toml store.sqlite3
miden client init