wavesafrica
Published in

wavesafrica

Getting Started on Waves as a “Software Developer”

This guide is focused on software engineers who are interested in building on Waves protocol.

Waves is a blockchain, just like Ethereum just that Waves makes it easier for you to access and build on blockchain technology.

Here are some amazing features Waves blockchain currently offers that interests software engineers

Waves offers:

  • Faster confirmation time for transactions, this is important for payment apps.
  • Cheap and flat network fees for transactions
  • Extensive documentation
  • Elegant APIs and libraries
  • Easy to understand smart contract language (RIDE)
  • Dedicated developer support community (24/7)
  • Waves is open source and open to the public on Github

NOTE: Waves in this article means the same as Waves blockchain, Waves protocol or Waves platform except otherwise stated.

But wait, what can you build on/with Waves?

There is a wide range of implementation you can do with Waves; including integrating Waves technology into your existing product/project or building a new project from scratch on Waves.

  • DeFi (Decentralized Finance) products like loan apps to lend and borrow money, savings app.
  • Blockchain-powered loyalty app
  • Crypto wallets
  • Crypto exchange
  • Voting dApp
  • Record keeping dApps
  • Borderless remittance app (especially for Africa)
  • Tokenized asset marketplace
  • NFT marketplace
  • Blockchain-powered games etc

Which way to go now?

I understand developers’ background varies and Waves ecosystem provides you with a wide range of developer tools and community to start testing and building.

Let us start with the client-libraries - these libraries are used to create, sign and send transactions, as well as to read data from the Waves blockchain. See below which one best fits for you.

  • Pywaves: PyWaves is an object-oriented Python interface to the Waves blockchain platform. See documentation | Github Repo
  • WavesKit (PHP): An all-in-one Waves Platform development kit for the PHP language. Github Repo
  • Waves transactions (JavaScript/TypeScript): You can easily create and sign transactions for the Waves blockchain in your JavaScript/Typescript application on the client-side and server-side. It also contains useful functions for cryptography and node REST API interaction. See Library | See documentation | Github Repo
  • WavesJ: A Java library for interacting with the Waves blockchain. It supports node interaction, offline transaction signing, matcher orders and creation of addresses and keys. See documentation | Github Repo
  • WavesC: C library for working with Waves. See documentation
  • WavesCS: A C# library for interacting with the Waves blockchain. Supports node interaction, offline transaction signing, Matcher orders, and creating addresses and keys. See documentation
  • WavesRS: A Rust interface (opens new window)to the Waves blockchain which can be used to create accounts and sign transactions. See documentation | Github Repo
  • Waves SDK for Android (Kotlin): WavesSDK is a collection of libraries used to integrate Waves blockchain features into your Android application. Github Repo
  • Waves SDK for iOS (Swift): WavesSDK is a collection of libraries used to integrate Waves blockchain features into your iOS application. Github Repo

Join Waves Developer community now (24/7 community support)

Waves Keeper and Waves Signer

As a developer getting started with building stuff on Waves, these two tools are your good friend. Unlike centralized apps whose backend and database is hosted on a centralized server allowing developers to authenticate their product user details before accessing their service, decentralized apps on Waves store Backend (coded with RIDE) and data on the Waves network. I’m mentioning these two tools because they are very essential when building your Waves powered dApps that will run on web and mobile.

  • Waves Keeper: Waves Keeper is a browser extension like MetaMask on Ethereum that allows users to sign transactions and securely interact with your Waves-integrated app/dApp without revealing their seed. Waves Keeper is designed for convenience, enabling users to sign transactions with just a couple of clicks. See documentation | Waves Keeper API
    Available for Chrome | Firefox | Edge | Opera | Brave
  • Waves Signer: A TypeScript/JavaScript library that enables signing and broadcasting transactions on behalf of users without asking them for their seed phrases or private keys and even without a need to install browser extensions (like WavesKeeper). See documentation | Github Repo

Opportunities on Waves ecosystem

As mentioned in the first part of this series, learning a new technology or moving to a new platform isn’t an easy task. Hence, it must worth it. They are several metrics and parameters every software engineer consider before moving to new technology and one of them is “available opportunity”

My aim is to make developers’ transition into Waves platform easier, smoother and profitable.

Projects keep springing up on Waves ecosystem and this opens doors of opportunity for software engineers who are familiar with Waves technology, tools and ecosystem. Below are opportunities with building on Waves;

  • Integrating Waves blockchain or service into mobile apps
  • Web app integration with Waves
  • Smart contract development
  • Consultation
  • Technical content creation
  • Hackathons
  • Grant for developers, team and companies building on Waves like this

Writing Smart Contracts with RIDE

Ride is an easy-to-learn and user-friendly programming language specifically designed for developing decentralised applications. Ride facilitates building decentralized applications without gas, allowing developers to benefit from a cheaper and more convenient coding process than ever before and making blockchain development totally easy.

Learn more | Download PDF version | FREE course | Create your first dApp

Personally, I and my team at Qurulab.com have built some amazing stuff on Waves Blockchain and we would be super excited to assist you if you face any issue.

This article is a quick welcome guide to help you get started with building stuff on Waves irrespective of your developer background. If you have any question or suggestion, don’t hesitate to drop in the comment section or drop on the Waves Developer Telegram community.

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Lucky Henry

Lucky Henry

20 Followers

I don’t just think, I commit my time & resources • Building simple and safe crypto for Africans — @munawallet