Surfboard is a command line interface for working with RIDE programming language. Surfboard allows to compile RIDE scripts, deploy and run tests.
Surfboard requires nodejs.
The full manual how to use different tools for Waves dApps you can find here
Surfboard is distributed as npm package. To install run npm i -g @waves/surfboard
For all commands surboard tries to use surfboard.config.json. If it is not present, surfboard falls back to global config. You can change global config by using config:change with -g flag
$ npm install -g @waves/surfboard
$ surfboard COMMAND
running command...
$ surfboard (-v|--version|version)
@waves/surfboard/2.3.0 darwin-x64 node-v17.0.1
$ surfboard --help [COMMAND]
USAGE
$ surfboard COMMAND
...surfboard compile FILEsurfboard config:change KEY VALUEsurfboard config:show [KEY]surfboard help [COMMAND]surfboard initsurfboard replsurfboard run FILEsurfboard test [FILE]
compile ride file
USAGE
$ surfboard compile FILE
ARGUMENTS
FILE path to ride file
OPTIONS
--fullInfo outputs JSON with additional info. Such as complexity, size etc.
See code: src/commands/compile.ts
change config
USAGE
$ surfboard config:change KEY VALUE
ARGUMENTS
KEY config option key in dot notion
VALUE config option value
OPTIONS
-g, --global change global config
See code: src/commands/config/change.ts
show config
USAGE
$ surfboard config:show [KEY]
ARGUMENTS
KEY Config option key in dot notation
OPTIONS
-g, --global Show global config
See code: src/commands/config/show.ts
display help for surfboard
USAGE
$ surfboard help [COMMAND]
ARGUMENTS
COMMAND command to show help for
OPTIONS
--all see all commands in CLI
See code: @oclif/plugin-help
initialize new Ride project
USAGE
$ surfboard init
See code: src/commands/init.ts
run ride repl
USAGE
$ surfboard repl
OPTIONS
--env=env which environment should be used for test
See code: src/commands/repl.ts
run js script with with blockchain context
USAGE
$ surfboard run FILE
ARGUMENTS
FILE path to script
OPTIONS
--env=env which environment should be used
--variables=variables env variables can be set for usage in script via env.{variable_name}. E.g.: MY_SEED="seed
phraze",DAPP_ADDRESS="xyz"
See code: src/commands/run.ts
run test
USAGE
$ surfboard test [FILE]
ARGUMENTS
FILE path to test file
OPTIONS
-v, --verbose logs all transactions and node responses
--env=env which environment should be used for test
--variables=variables env variables can be set for usage in tests via env.{variable_name}. E.g.: MY_SEED="seed
phraze",DAPP_ADDRESS=xyz, AMOUNT=1000
See code: src/commands/test.ts