> For the complete documentation index, see [llms.txt](https://docs.sourceprotocol.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.sourceprotocol.io/smart-contracts-and-sourced-development/cw1-tutorial/installation.md).

# Installation

Follow the steps to set up a local development chain or connect to the Source Chain Testnet before continuing.

## Rust

Assuming you have never worked with rust, you will first need to install some tooling. The standard approach is to use `rustup` to maintain dependencies and handle updating multiple versions of `cargo` and `rustc`, which you will be using.

### Installing Rust in Linux and Mac

First, [install rustup (opens new window)](https://rustup.rs/). Once installed, make sure you have the wasm32 target:

```
rustup default stable
cargo version
# If this is lower than 1.49.0+, update
rustup update stable

rustup target list --installed
rustup target add wasm32-unknown-unknown
```
