> For the complete documentation index, see [llms.txt](https://docs.vera.financial/developers/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.vera.financial/developers/main/getting-started/prerequisites.md).

# Prerequisites

### Prepare a computer for Substrate development

{% embed url="<https://substrate.dev/docs/en/knowledgebase/getting-started/>" %}

{% hint style="info" %}
You can follow the detailed guide from [Substrate Developer Hub.](https://substrate.dev/docs/en/knowledgebase/getting-started/)
{% endhint %}

## 1. Install build tools & libraries

#### macOS

```bash
# Install Homebrew if necessary https://brew.sh/
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

# Make sure Homebrew is up-to-date, install openssl
brew update
brew install openssl
```

#### Ubuntu/Debian

```bash
sudo apt update
# May prompt for location information
sudo apt install -y git clang curl libssl-dev
```

#### Arch Linux

Run these commands from a terminal:

```
pacman -Syu --needed --noconfirm curl git clang
Copy
```

#### Fedora

Run these commands from a terminal:

```
sudo dnf update
sudo dnf install clang curl git openssl-devel
```

## 2. Install Rust toolchain

This guide uses [`rustup`](https://rustup.rs/) to help manage the Rust toolchain. First, install and configure `rustup`:

```bash
# Install
curl https://sh.rustup.rs -sSf | sh
# Configure
source ~/.cargo/env
```

Configure the Rust toolchain to default to the latest stable version, add nightly and the nightly wasm target:

```
rustup default stable
rustup update
rustup update nightly
rustup target add wasm32-unknown-unknown --toolchain nightly
```
