How to Build a dApp on WAX

I. Introduction

Our previous article gave a quick overview of dApps (Decentralized Applications) on WAX and looked at the basic underlying components – front-end, back-end, and smart contracts. 

dApps are not like the programs you install on your mobile device or computer; you simply click on a web-based frontend, the dApp accesses smart contracts on the back-end and – bingo, you can start playing games, trading NFTs, and more.

Because the blockchain runs on serious inbuilt cryptography, the dApps that run on them are more secure and less prone to downtime and outages than the standard software installed on most people’s computers. 

Users can access software such as online games, virtual marketplaces, and DeFi (Decentralized Finance) without having to sign up, download, and manage cumbersome updates, profiles, and accounts.

As a result, dApps can provide elegant solutions to many software needs, and are also increasingly seen as a part of the solution to thorny issues, such as user identity or the verifiable tracking of supply chains in global trade.

Currently, any collector or trader of WAX NFTs can browse existing dApps, for example using Bloks.io. Doing this will help you understand where the technology of Web 3.0 is going.

As for professional developers and coders, this is a rapidly evolving market that needs their skills. It is fairly easy to code in WAX thanks to all the pre-existing libraries and tools. If so, you can read this article about the Developer Hive or this one about how to sign up to the AtomicAssets or the Simple Assets Telegram and Discord groups, where you can find out more.

II. What Can I Use a dApp For?

i. Overview

dApps allow you to access the WAX blockchain. Currently, there are over 700 WAX dApps, most of them used for video games, crypto exchanges, or basic utilities. You may have already used Bloks.io so here are three more examples.

ii. Gaming: Alien Worlds

Image by alienworlds.io

The #1 dApp on WAX is this fully-featured space mining and trading gaming ‘metaverse’ based on its own native crypto token – Trillium ($TLM). ‍Alien Worlds is a 3rd party dApp, meaning it can run on blockchains other than WAX, such as Ethereum and Binance Smart Chain (BSC). 

To understand what decentralized web-based dApps can do, you can play a lot of different video and strategy games as well as trade different types of NFTs with other users. Once you have built up your stash of $TLM crypto you can even participate in governance via planetary DAOs (Decentralized Autonomous Organizations) – this is Web 3.0 technology in action.

Building a dApp for Alien Worlds is currently not an option, but an interesting recent development is a link-up between WAX and the Alien Worlds Metaverse that allows artists and other creators to invent new NFTs, so this may be the way of the future.

iii. Exchange: Alcor

Image by wax.alcor.exchange


A dApp can also provide cryptocurrency exchange and trading functions, and such features are available using Alcor. If you choose the ‘WAX Mainnet’, you will see information about WAX, and if you connect your wallet, you can use all the on-chain tools and features. Click on ‘Docs’ and find out more about this DEX (Decentralized exchange).

Alcor is based on EOSIO blockchain technology, of which WAX is a fork, and integrates the BOS, TELOS, EOS, and Proton blockchains as well. Using Alcor, you can participate in various forms of DeFi trading, Liquidity Pools, Token Creation, and Market Pair Creation.

In plain language, you can swap tokens and NFTs and play the markets. Bear in mind that all the data presented comes up in real-time using smart contracts embedded in the blockchain.

iv. Other: Atomic Assets and Simple Assets

The #2 dApp on WAX is Atomic Assets. Our previous series of three articles went into depth on the Atomic Hub and explained how to create and list a collection of NFTs and then trade them peer-to-peer with other Atomic Hub users. The Atomic Hub is essentially a set of dApps.

Blockchain code tends to be based on open standards. This allows developers to re-use other people’s work, minimizing the ‘reinvention of the wheel’. WAX developers use one of two standards: Atomic Assets or Simple Assets, an overview of which can be found in our previous article about the WAX Developer Hive.

Later we will go into more detail about how you can build a dApp using both of these.

III. Step-by-Step Guide to Building a dApp on WAX

i. Overview

Now that you have familiarized yourself with some existing dApps, you can start learning how to build your own. 

Most dApps are built by teams working together, sometimes virtually from across the whole world. Take a look at the WAX validators in Blocks.io and you will see where these are – Costa Rica, Ukraine, Canada, UAE, USA, etc.

ii. Coding Requirements for a Newbie

Image by developer.wax.io

If you want to build a dApp, you will either need a Developer to help you (in which case reading this article is going to help you understand what sort of a developer you’ll need), or you will need to build up the coding skills yourself – namely in the object-oriented language called C++. 

Next, you need to choose between Atomic Assets and Simple Assets. The latter is a lot simpler, whereas Atomic Assets is a bit more complex but has useful enhancements you can find out about by reading our previous article on the Atomic Hub NFT Creator. 

Linux is a good OS to use because it is not based on any closed proprietary software (like macOS or Windows). A FOSS community develops the Linux coding tools, fixes bugs, and minimizes security problems — all openly and transparently.

iii. Simple Assets

The WAX Developer Hive is based on the Simple Assets standard. 

Before you start, you have to set yourself up with an API key. This requires you to have a wallet (the simplest and easiest one to set up is the Wax Cloud Wallet). Click on the ‘Get Started’ button at the top right-hand corner of the main screen:

Image by developer.wax.io

This will lead you through 3 stages of getting an Application Programming Interface (API) key. 

  1. Set up a WCW
  2. Switch on 2FA security
  3. Receive your API key

This whole process will require you to have some sort of an Authentication app, preferably on your smartphone, to generate the 2FA codes.

Image by developer.wax.io

Study the documentation and choose a Quickstart to get yourself coding.

In order to run the WAX Blockchain and start building your smart contracts, you need to use Docker. Currently, Docker works under a variety of Linux OS, as well as Mac and Windows 10.

First, create a new directory called ‘wax’ and then run the commands. You should get a running ‘container’ with an active UNIX shell and command language session, in this case in bash. You can use this bash session to follow along with quick start guides and tutorials.

Other quickstarts include:

iv. Atomic Assets

The documentation for the Atomic Assets standard is on a Github wiki page. To access all the resources, you will first need to open an account.

Image by github.com

You will be presented with text-based guides. To get started immediately, try the Quickstart. To go deeper, look at the AtomicAssets Structure or the Actions and Tables of a smart contract. Some of the unique AtomicAssets features are Offers, Notifications, and Backing Tokens. The links to Serialization, Custom Types, and Data Precedence deal with data storage.

At the top of the page, you will see the regular Github menu. Some of the pages are related to GitHub itself, so if it is your first time on Github, it is a good idea to read more.

If you need more information, you can sign into the Telegram Atomic Devs group and ask some questions.

IV. Summary

This article has overviewed WAX dApps using 3 popular examples in the category of games, crypto token exchanges, and environments for creating NFTs.

Building a dApp requires programming skills. Although that is a big learning curve for any novice developer, the good news is that it’s a good career move given the huge number of potential use-cases for dApps and blockchain, and the explosion in online gaming and ‘metaverses’.

Currently, the biggest platforms for dApps are connected to the EVM (Ethereum Virtual Machine) whose stated aim is to become the ‘World Computer’. Blockchain futurists foresee a world of dApps, Autonomous Corporations, and DAOs (Decentralized Autonomous Organizations) where token holders are active participants in the governance of the whole ecosystem, beyond the control of central authorities who cannot censor or block any activity. This also addresses the persistent hacking of centrally-held databases of user identity by providing a blockchain-based solution through SSI (Self Sovereign Identity).

The era of the dApp is upon us – good luck coding yours!

Pin It on Pinterest

Share This