waves_logo Docs
  • Overview
    Overview
  • How-to Guides
    • Reading Blockchain Data
      Reading Blockchain Data
    • Creating & Broadcasting Transactions
      Creating & Broadcasting Transactions
    • Tokenization
      Tokenization
    • Airdrop
      Airdrop
    • Payments
      Payments
    • Exchange Tokens
      Exchange Tokens
    • Simple Voting
      Simple Voting
    • List as argument
      List as argument
    How-to Guides
  • Waves Smart Contracts
    Waves Smart Contracts
  • dApp
    • Creating & Launching dApp
      Creating & Launching dApp
    dApp
  • Smart Account
    • Creating smart account
      Creating smart account
    • Creating and deploying a script manually
      Creating and deploying a script manually
    • Video tutorials
      • Introduction to the Waves blockchain, Waves Smart Accounts and Waves Smart Assets
        Introduction to the Waves blockchain, Waves Smart Accounts and Waves Smart Assets
      • Waves Smart Account with multisignature
        Waves Smart Account with multisignature
      • Waves Smart Account with escrow service
        Waves Smart Account with escrow service
      • Creating multisignature account via Waves IDE tools
        Creating multisignature account via Waves IDE tools
      • Creating multisignature account via Waves Client
        Creating multisignature account via Waves Client
      • Waves console explained
        Waves console explained
      Video tutorials
    Smart Account
  • Smart Asset
    Smart Asset
  • Developer Tools
    • Waves IDE
      Waves IDE
    • Visual Studio Code Extension
      Visual Studio Code Extension
    • Surfboard
      Surfboard
    • Ride REPL
      Ride REPL
    Developer Tools
  • Signer ◆
    Signer ◆
  • Waves API
    • Data Service API
      Data Service API
    • Node REST API
      Node REST API
    • Node gRPC Server
      Node gRPC Server
    • Blockchain Updates
      Blockchain Updates
    Waves API
  • Client Libraries
    • Waves C#
      • Install SDK
        Install SDK
      • Run Code Sample
        • Send Transactions
          Send Transactions
        • Use Crypto Utilities
          Use Crypto Utilities
        • Interact With Node
          Interact With Node
        • Set Up Smart Contracts
          Set Up Smart Contracts
        Run Code Sample
      Waves C#
    • Gowaves
      • Install SDK
        Install SDK
      • Run Code Sample
        • Send Transactions
          Send Transactions
        • Use Crypto Utilities
          Use Crypto Utilities
        • Interact With Node
          Interact With Node
        • Set Up Smart Contracts
          Set Up Smart Contracts
        Run Code Sample
      Gowaves
    • WavesJ
      • Install SDK
        Install SDK
      WavesJ
    • Ts-lib-crypto
      • Install SDK
        Install SDK
      Ts-lib-crypto
    • Waves-PHP
      • Install SDK
        Install SDK
      Waves-PHP
    • Waves-python
      • Install SDK
        Install SDK
      Waves-python
    • Waves-rust
      • Install SDK
        Install SDK
      Waves-rust
    Client Libraries
      • English
      • Русский
      On this page
        • Configuration
        • Creating Account
        • Writing Ride Script
        • Ride REPL: Interactive Console
        • Assigning Script to Account
        • Issuing Smart Asset
        • Signing and Sending Transactions
        • JavaScript Interactive Console
        • Running Tests
      waves_logo Docs

          # Waves IDE

          Waves IDE is an online environment for developing and testing Ride smart contracts.

          Key features:

          • Code completion (snippets).
          • Syntax and error highlighting.
          • Sharing files.
          • Library of exapmles.
          • Ride REPL interactive console.
          • Ride script compilation and assigning to an account or asset.
          • Signing and sending transactions.
          • JavaScript console with built-in functions for interaction with the Waves blockchain.
          • Running JavaScript tests.

          Waves IDE address:

          • https://waves-ide.com/ – the major environment.
          • https://stagenet.waves-ide.com/ – the environment with support for new features of Waves protocol which are now available on Stagenet only.

          # Configuration

          Configure the settings for blockchain operation:

          1. Click or press Ctrl + Shift + , (Cmd ⌘ + Shift + , for macOS).
          2. If necessary, change the blockchain network and node URL.

          # Creating Account

          1. Click the account avatar or the Add account button in the top right corner. Select Generate new account.
          2. Click Show seed and private key and backup the seed phrase to a secure location. You will need the seed phrase to restore access to the account.
          3. Change the account name to quickly find it in the list. To do this, hover over the account name in the list and click . The account name is displayed only in Waves IDE.

          To import an existing account, click the account avatar or the Add account button, select Import account and paste your seed phrase.

          💡 To top up account balance on Testnet or Stagenet, do the following:

          1. Copy address: click the account avatar and then click .

          2. Go to the page:

            • https://wavesexplorer.com/faucet?network=testnet for Testnet;

            • https://wavesexplorer.com/faucet?network=stagenet for Stagenet.

          3. Paste the address, then click Request WAVES.

          # Writing Ride Script

          Click and select script type.

          Waves IDE helps you to write a code:

          • prompts for names of built-in functions, operators, variables, and structures: just start typing or press Ctrl + Space (Cmd ⌘ + Space for macOS);
          • highlights errors;
          • displays the current script size and complexity.

          Script file is saved in Waves IDE automatically. To save the file on your computer, in the menu on the right, hover over the file name and click . To share the script, click Share File under the script code.

          💡 Find script examples in the Library menu.

          # Ride REPL: Interactive Console

          Ride REPL is the easiest way to try out the Ride language and its execution semantic.

          Switch to the Ride REPL tab at the bottom of the window. Type an expression and press Enter.

          Learn more about Ride REPL

          # Assigning Script to Account

          1. Open the dApp script or the account script and click Deploy.
          2. In the Sign and publish window, select the appropriate account and click Add sign to generate the signature for the set script transaction.
          3. Click Publish to send the transaction.

          # Issuing Smart Asset

          1. Open the asset script and click Issue.
          2. In the Sign and publish window, edit the JSON representation of transaction: add the name, description, and quantity fields. See the fields description in the Issue Transaction article.
          3. Select the issuer's account and click Add sign to generate the signature for the issue transaction.
          4. Click Publish to send the transaction.

          # Signing and Sending Transactions

          1. Click .
          2. In the Sign and publish window, paste the JSON representation of the transaction.
          3. Select the sender's account and click Add sign.
          4. Click Publish to send the transaction.

          # JavaScript Interactive Console

          Switch to the Console tab at the bottom of the window. Type a command and press Enter.

          The console provides built-in functions for interaction with the Waves blockchain: signing and sending transactions, reading blockchain data, working with account keys and others. See the list of functions of js-test-env .

          # Running Tests

          In JS tests, you can use describe, before, it, expect and other functions of mocha and chai libraries. You can find test examples in the Library menu on the right.

          To run test:

          1. Click and select Test.
          2. Replace the automatically generated code with your test.
          3. Click Run full test.

          Test result is displayed on the Tests tab at the bottom of the window.

          Developer Tools
          Visual Studio Code Extension
          Developer Tools
          Visual Studio Code Extension