Getting Started for Developers

Getting Started for Developers

Getting started for developers

This page introduces you to the things you'll need to get started on your journey.

This will give you all the information you need as a developer to get started in an easy to read and concise format.

Client Libraries

Waves Client is supported by many libraries, please Get to know our client libraries and use them depending on which language you're familiar with:

  • Python: PyWaves
  • Java: WavesJ
  • C#: WavesCS
  • TypeScript/JavaScript, Waves Signature Adapter and Waves Transactions
  • C: WavesC
  • Community Libraries


The Waves Node API provides RESTful platform for implementing blockchain functionality in apps using Waves blockchain.

Use the API to integrate a variety of functionalities including orders, transaction history, and balances.

Smart Contracts

Usually as a developer, you will need two things: theoretical understanding and tools to make your coding life easier, in our guide we will provide you with both:

Theoretical Understanding

You will need to know:

How Waves smart contract works (You can go through our smart contract guide to get more information about it) and you can read about our smart accounts and smart assets.

Which programming language to use (we're using our own language which called RIDE, Get to know RIDE).

How to write a dApp (Go ahead and write your first dApp)

let's suppose now that you understand the main idea of our smart contracts and you want to go through all functions and to understand how they work, please find here our built-in functions, operators and structures.

Tools to help you with RIDE

In Waves, we always think about the best way to help external developers and because of that we will provide you with some useful tools:

  • Waves IDE , Try out the new non-turing complete Waves smart contract language Ride by using our IDE.
  • Waves console and its commands, Waves IDE has a Waves console feature which supports different commands.
  • Get to our videos and articles, We believe that the best way to learn is by practical examples.


The reason behind decentralized exchange is to perform secure exchange of assets issued on Waves platform.

The real-time trading is achieved thanks to the only centralized design element of our DEX - the order book Matcher, which matches incoming orders and execute trades at high speed, typically within milliseconds. There is no need to wait for the next block to know whether a trade has been executed successfully, this provides speed at the level of centralized exchange and the security of the decentralized protocol.

Please take a look to Waves DEX API for more details and get the theoretical details by reading our DEX article.

Keeper API

Check the new Waves Keeper browser extension which turns your browser into a keychain that enables you to sign transactions securely on third-party web resources without entering your seed or password. So now, if a Waves-integrated website or Dapp requires you to sign a transaction, you can do it with just a couple of clicks, right in your browser.

The extension will be particularly useful to developers who want to embed Waves functionality in their projects, because it supports the Auth and Payment APIs. For testing purposes you can switch between using it on MainNet and TestNet.