For the complete documentation index, see llms.txt. This page is also available as Markdown.

Setting Up Your Environment

Environment configuration instructions to get started developing on Secret Network.

Secret Contracts are written using the CosmWasm framework. CosmWasm contracts are written in Rust, which is later compiled to WebAssembly (or WASM for short). To write our first Secret Contract, we need to set up a development environment with all of the tools required so that you can upload, instantiate, and execute your smart contracts.

For a step-by-step Secret Network environment configuration video tutorial, follow along here 🎥. Otherwise, continue reading!

Install Requirements

To follow along with the guide, we will be using git, make, rust, and docker.

sudo apt-get install git make

Install git:

  1. Download the latest Git for Mac installer.

  2. Follow the prompts to install Git.

  3. Open a terminal and verify the installation was successful by typing git --version

Install make:

brew install make

Install git and perl (for Windows):

  1. Go to https://git-scm.com/download/win and the download will start automatically. Note that this is a project called Git for Windows, which is separate from Git itself; for more information on it, go to https://gitforwindows.org.

  2. Go to https://strawberryperl.com and download the recommended version for your system. StrawberryPerl is an open-source Perl environment for Windows; for more information, visit https://perl.org. Perl is used to build other dependencies that will be installed later.

Note: support for make on Windows is limited, so we'll provide separate commands for Windows where necessary

Install Rust

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

Download and run rustup-init.exe.

Download and run the Rust .msi installer

Add WASM build target

rustup target add wasm32-unknown-unknown

Install Cargo Generate

Cargo generate is the tool you'll use to create a smart contract project. Learn more about cargo-generate here.

cargo install cargo-generate --features vendored-openssl

Install Docker

Docker is an open platform for developing, shipping, and running applications.

Install SecretCLI

SecretCLI is a command-line tool that lets us interact with the Secret Network blockchain. It is used to send and query data as well as manage user keys and wallets.

Run the following commands in Powershell to download the latest version of SecretCLI and add it to your profile's PATH:

Afterwards, restart the terminal and test the installation with the following command:

Download secretcli for your system here.

Set the file name to secretcli and set it as executable

Download secretcli for your system here.

Set the file name to secretcli and set it as executable

For a more detailed and in-depth guide on SecretCLI installation and usage, check out the documentation here.

Now it's time to learn how to compile and deploy your first smart contract 🎉

Last updated

Was this helpful?