Awesome
Waves Ride language extention and Waves JS Console for Visual Studio Code
Ride compiler version 1.4.18-94668465c91abb4403f0d28ba6031191e88de65f
Ride is the language used in Waves blockchain to create smart accounts. This extention provides:
- Syntax highlighting
- Code completion for global functions and fields
- Snippets
- Interactive console for Waves blockchain
Usage
Extention recognizes ".ride" files
Code completion
Use standard Ctrl/Command + Space to autocomplete. Global functions, variables, transaction types are supported. Pattern matching and if/else statements supported via snippets
Error highlighting
Currently shows first compilation error. Invalid base64 and base58 strings are highlighted via syntax highlighting
Interactive console
To open interactive console run "Start Waves JS Console" task via command palette (Shift + Command + P). Waves JS Console is a javascript console with convenient functions to interact with blockchain. Console provides help method for this functions.
Available functions
Transactions:
You can create and sign transactions. All functions take transaction parameters and optional seed to sign. If no seed is provided, default one from settings will be used. For more detailed list check @waves/waves-transactions library, that is used internally
- alias(txParams, seed?) - create and sign createAlias transaction
- issue(txParams, seed?) - create and sign issue transaction
- reissue(txParams, seed?) - create and sign reissue transaction
- lease(txParams, seed?) - create and sign lease transaction
- cancelLease(txParams, seed?) - create and sign cancelLease transaction
- burn(txParams, seed?) - create and sign burn transaction
- transfer(txParams, seed?) - create and sign transfer transaction
- massTransfer(txParams, seed?) - create and sign massTransfer transaction
- setScript(txParams, seed?) - create and sign setScript transaction
- data(txParams, seed?) - create and sign data transaction
Addresses and keys:
You can generate keyPairs from seed. If no seed is provided, default one from settings will be used.
- keyPair(seed?) - create key pair. Both private and public
- privateKey(seed?) - create private key
- publicKey(seed?) - create public key
- address(seed?) - create address from seed
Code interaction:
You can interact with code.
- contract() - retrieves text from current active editor with .ride file
- file(fileName) - retrieves text from open editor with .ride file by file name
- compile(text) - compiles contract code
Blockchain interaction:
You can broadcast transaction to blockchain or publish current script
- broadcast(tx, apiBase?) - send transaction to waves node
- deploy() - shortcut to broadcast(setScript({script:compile(contract())}))
Settings
Default chain id
"rideExtention.repl.CHAIN_ID": "T"
Default seed
"rideExtention.repl.SEED": "our default example seed for ride extention plugin inside visual studio code"
Node URL
"rideExtention.repl.API_BASE": "https://nodes-testnet.wavesnodes.com"