MultiversX Dev Inventory

Introduction to tools, potions, spells... all that real MultiversX Dev needs

Let's put together all the tools required to become the real MultiversX Dev warrior. The purpose of this is to try to make the lives of new developers simpler and show them the way.

Depending on your MultiversX Dev warrior 'class', you will need different tools. There are two areas: writing smart contracts and interaction with smart contracts (frontends, CLI tools, apps, etc.).

Smart contract mage

For writing smart contracts on the MultiversX network, you would need to grasp the secrets of Rust programming language, which has become very popular in the blockchain ecosystem. Don't worry. It shouldn't be so hard with the MultiversX tooling, even for someone who never programmed in Rust.

The MultiversX Virtual Machine supports any language which can compile the code to WASM. In practice, it will depend on the actual available frameworks and their completeness. When writing this, the only complete framework is Rust-based mx-sdk-rs.

Btw. You can read more about the MultiversX WASM Virtual Machine here.

Rust framework will be your main sword!

There are also other tools. One of them will be VSCode IDE, an extension for VSCode which will make your life easier. It will allow you to build the smart contract, test it and run previously prepared snippets for interactions.

If you don't want to use the VSCode extension, your tool for the same operations will be mxpy, which is a Python-based CLI and SDK. We will learn more about it later, so keep reading. Btw. the VSCode extension also uses it under the hood.

Also, remember that we don't want to copy the official documentation, so that you will find a lot of information about smart contracts in the official docs. Start from here: Developer overview.

Soon, you will also find a few other 'scrolls' that will focus more on the details here. We already have a very simple example of a smart contract. Check it here: multiversx-simple-sc. It will be a base for documenting all the details of how it is built, how to interact with it, test it, deploy, upgrade, and more.

Oh, I almost forgot. It is always good to train with masters. Here you will find examples of smart contracts from real-world written by the MultiversX core team masters:

Dapps summoner

The second area for the development is related to the Dapps and interaction with smart contracts and the MultiversX network itself.

Here you will also need a couple of tools in your inventory.

This 'class' of the MultiversX developer can have some subclasses. You can be a master in Typescript or Python. Both will be good for CLI tools, scripts, etc. Additionally, Typescript or JavaScript will be helpful when writing frontends.

Previously mentioned Python SDK is a powerful gem in your inventory. It can do a lot. It can be used as a dependency in Python projects. It can also be used as a standalone CLI tool. Here you will find all operations you can do with it: mxpy CLI docs. And here, you will discover how to install it: Installing mxpy.

TypeScript/JavaScript SDK, and believe me, mastering it is a powerful path. There are only a few masters. Become one!

The JS/TS SDK can be used in the NodeJS environment and the browser. It has all the tools required for interaction with the network and smart contracts. It is split into a couple of more libraries to keep it as small as possible. These are listed here: JS/TS SDK packages list.

There is also REST API. You will find Swagger docs here: api.multiversx.com.

We will focus on more details and what each library can do in the following articles.

You can learn more about what is possible with JS/TS SDK here: JS SDK cookbook.

Finally, ready-to-use frontend tools like templates for the React/Nextjs ecosystem are also available. Each of them uses the JS SDK as a fundamental tool. The official one is sdk-dapp, designed to be used with standard React apps. It is also probably the most developed one, with many components, hooks, and helpers. For the NextJS framework, there is a community based template included here in the Guild: nextjs-dapp-template, where you will also find links to other community-based solutions.

Ok, so what other tools and services will be helpful?

What wasn't mentioned yet? Let's see.

Of course, wallets, this is crucial for you to start working. Imagine a warrior without money, huh?

Here is the list of all official wallets:

Do you want a quick try with smart contracts and interactions without any configuration? A Web IDE allows you to write, build, and even deploy the smart contract, and you can also load a couple of examples. Check it out: MultiversX Smart Contracts Playground.

Working with the blockchain and smart contract will also require using some explorers. Here are the official ones:

You would probably also need the faucet. There are official faucets in the testnet and the devnet web wallets linked above, but there is also a community-based one here: r3d4 faucet.

What is worth linking here is the MultiversX Converters web app. It is probably used very often in daily work.

Where else a young Padawan could search for help?

Besides our welcoming Guild, there are also other places for that. You could check:

Let us know if you would like to write something or have any ideas about what could land here in our scrolls library.

Last updated