Practical overview
When it fits
Use Waves when a project needs a self-hosted or development-oriented connection to the Waves blockchain protocol, including node operation, transaction services or decentralized application development.
Who it is for
- Blockchain infrastructure operators running a Waves node.
- Scala developers building services against the Waves protocol.
- Teams creating decentralized applications or RIDE smart contracts.
- Contributors working on the node implementation and its extensions.
Documented uses
- Run a node connected to the Waves blockchain network.
- Process and validate Waves transactions.
- Generate and store blockchain blocks.
- Build decentralized applications on Waves.
- Develop applications using RIDE smart contracts.
Requirements & limits
The repository is public and open source under the MIT license. The documented platforms include Linux, macOS and Windows for JAR startup, with Docker also referenced for node use.
- The implementation is written in Scala and uses Java tooling.
- Node startup requires both a network configuration file and a released waves-all*.jar file.
- The node includes a REST API and extension management.
- The repository documents separate mainnet and testnet packaging commands.
- RIDE is the smart-contract language identified for the Waves ecosystem.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Prepare the Waves development environment
Set up the repository workflow for checking, testing and packaging the node.
Before you start
- Java for the development platform.
- SBT.
- A cloned copy of the public Waves repository.
- Docker for the documented integration-test image step.
Steps
Install Java and SBT for the development platform.
Clone the repository and enter its directory.
Run the documented SBT project checks.
Optionally create the Docker image and run integration tests, then use the documented SBT packaging commands for mainnet or testnet packages.
Expected outcome
The repository is prepared for the documented checks, optional integration tests and package-building workflow.
Guide limitations
- The integration-test and packaging stages are optional parts of the documented development workflow.
- This recipe describes the repository instructions and does not establish successful execution in a particular environment.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 2 October 2026
- Original website title
- wavesplatform/Waves · Official homepage title · retained in its source language

