How to get started ../../_images/icon_innovation.svg#

Use this beginner-friendly guide to start building on Terra.

Learn about Terra

To learn more about about Terra concepts like Luna, validators, and governance, visit the Terra protocol overview.

Follow the steps below to get started with Terrain and build your own dApp!

1. Set up Terrain#

Terrain is a user-friendly development environment for developing smart contracts. Terrain makes it easy to create smart contract templates, deploy them to the Terra blockchain, and connect them to a frontend app.

Follow the Terrain setup tutorial to get started using Terrain.

2. Download LocalTerra and start building#

LocalTerra is a scaled-down Terra blockchain that allows you to test your dApp locally. LocalTerra provides a single validator node and 10 preconfigured wallet accounts.

Follow the Terrain with LocalTerra tutorial to start using Terrain and create a simple counter app.

3. Mint an NFT#

Now that you are familiar with Terrain and LocalTerra, you can try minting an NFT with Terrain.

The NFT minting tutorial walks you through the creation of an NFT minting application using the dApp scaffolding and front end provided by Terrain.

Terra Academy

For interactive courses on developing smart contracts using Rust and CosmWasm libraries, visit Terra Academy.

Development Suite#

Congrats! You have the basics down!

Now you can dive into the other tools in the Terra Development Suite. Visit the tool guide for more info.


Use Terra.js to create bots, power NFT mints, and for all-purpose back end services. Follow the Terra.js tutorial to get started.

Use for on-chain analytics, Jupyter Notebooks, data processing, and other mathematical processes. Follow the tutorial to get started.

Wallet Provider and Templates:#

If you have a back end for your app and want a front end to connect to Terra Station, use Wallet provider and Terra Templates. Follow the Wallet Provider tutorial to get started.

Other Tools#

Terra also provides other tools for building:

  • Finder: Terra’s multi-purpose block explorer.

  • Faucet: Get tokens sent to your testnet address.

  • terrad: the node daemon and command line interface that connects to the Terra network.


Written by devs, for devs, is the community documentation platform for all things Terra, including community-generated tutorials, reference material, and troubleshooting guides. Start browsing, or log in and create your own article.

Agora Developers’ Forum#

Join the Developers’ Forum and talk to other devs about code, projects, and troubleshooting.

Terra Academy#

Take interactive courses and learn about coding in Rust, using CosmWasm libraries and developing, testing, and deploying your own smart contracts. Visit the Terra Academy site to get started.

Terra Discord Server#

If you would like to connect with the developer community and ask questions related to software development on Terra, join the Terra Discord server. Once you’ve joined the server:

  1. Select Developer Role by clicking on the Green Bug icon 🪲 under the 🪲 | dev-roles channel.

  2. Once you are subscribed, a new section with the Terra developer channels appears under 🪲 DEV.

  3. Select the relevant channel to ask your questions and receive support.