Install tools for development#

Before you can start developing smart contracts, you need to setup the environment.

You can also watch a video about installing the smart contract tools.

Rust and Cargo#

First, install rustup, which installs both Rust and Cargo on your machine.

Then use rustup to install the Wasm target, which is used for compilation:

$rustup target add wasm32-unknown-unknown


cargo-concordium is the tool for developing smart contracts for the Concordium blockchain. It can be used for compiling and testing smart contracts, and enables features such as building contract schemas.

To install cargo-concordium run:

$cargo install --locked cargo-concordium

For a description of how to use the cargo-concordium run:

$cargo concordium --help

To use verifiable builds with cargo-concordium a container runtime such as Docker is required.

VSCode extension#

The VSCode extension can help you develop Concordium smart contracts. The extension sets up the editor for development, installs the cargo-concordium smart contract development tool for all supported platforms, and provides commands in the editor for the essential workflows, such as building and testing smart contracts.

You can watch a video about how to use the VSCode extension.

Typescript smart contract client generator#

The Typescript smart contract client generator helps you generate JavaScript/TypeScript clients for smart contracts on the Concordium blockchain, providing a lower development time and better type-safety.

Concordium software#

The tool to deploy and interact with smart contracts is concordium-client. It is distributed as part of the Concordium software package.

To ease deployment and initialization, you can use the Smart contract deploy and initialize tool. It works with the Concordium Wallet for Web to deploy and initialize smart contracts to Mainnet and Testnet.


To deploy smart contract modules and interact with the chain, make sure that you are running a node.

Was this article helpful?
Legal information