This guide is focused on software engineers who are interested in building on Waves protocol. Here are some amazing features Waves Blockchain currently offers that interest software engineers;
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.