Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/wavesplatform/Surfboard
Command line interface for working with waves RIDE language
https://github.com/wavesplatform/Surfboard
waves
Last synced: 26 days ago
JSON representation
Command line interface for working with waves RIDE language
- Host: GitHub
- URL: https://github.com/wavesplatform/Surfboard
- Owner: wavesplatform
- Created: 2019-06-05T12:10:52.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2023-03-03T00:40:23.000Z (almost 2 years ago)
- Last Synced: 2024-10-15T11:34:02.365Z (about 2 months ago)
- Topics: waves
- Language: TypeScript
- Homepage:
- Size: 1.79 MB
- Stars: 10
- Watchers: 4
- Forks: 3
- Open Issues: 16
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-waves - surfboard - CLI to work with the Ride language and testing. (Frameworks and tools / The Ride programming language)
README
Surfboard
=========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](https://blog.wavesplatform.com/how-to-build-deploy-and-test-a-waves-ride-dapp-785311f58c2)
[![oclif](https://img.shields.io/badge/cli-oclif-brightgreen.svg)](https://oclif.io)
[![Version](https://img.shields.io/npm/v/@waves/ride-cli.svg)](https://npmjs.org/package/@waves/ride-cli)
[![Downloads/week](https://img.shields.io/npm/dw/@waves/ride-cli.svg)](https://npmjs.org/package/@waves/ride-cli)
[![License](https://img.shields.io/npm/l/@waves/ride-cli.svg)](https://github.com/wavesplatform/ride-cli/blob/master/package.json)* [Installation](#installation)
* [Usage](#usage)
* [Commands](#commands)# Installation
Surfboard is distributed as npm package. To install run `npm i -g @waves/surfboard`# Usage
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```sh-session
$ 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
...
```# Commands
* [`surfboard compile FILE`](#surfboard-compile-file)
* [`surfboard config:change KEY VALUE`](#surfboard-configchange-key-value)
* [`surfboard config:show [KEY]`](#surfboard-configshow-key)
* [`surfboard help [COMMAND]`](#surfboard-help-command)
* [`surfboard init`](#surfboard-init)
* [`surfboard repl`](#surfboard-repl)
* [`surfboard run FILE`](#surfboard-run-file)
* [`surfboard test [FILE]`](#surfboard-test-file)## `surfboard compile FILE`
compile ride file
```
USAGE
$ surfboard compile FILEARGUMENTS
FILE path to ride fileOPTIONS
--fullInfo outputs JSON with additional info. Such as complexity, size etc.
```_See code: [src/commands/compile.ts](https://github.com/wavesplatform/surfboard/blob/v2.3.0/src/commands/compile.ts)_
## `surfboard config:change KEY VALUE`
change config
```
USAGE
$ surfboard config:change KEY VALUEARGUMENTS
KEY config option key in dot notion
VALUE config option valueOPTIONS
-g, --global change global config
```_See code: [src/commands/config/change.ts](https://github.com/wavesplatform/surfboard/blob/v2.3.0/src/commands/config/change.ts)_
## `surfboard config:show [KEY]`
show config
```
USAGE
$ surfboard config:show [KEY]ARGUMENTS
KEY Config option key in dot notationOPTIONS
-g, --global Show global config
```_See code: [src/commands/config/show.ts](https://github.com/wavesplatform/surfboard/blob/v2.3.0/src/commands/config/show.ts)_
## `surfboard help [COMMAND]`
display help for surfboard
```
USAGE
$ surfboard help [COMMAND]ARGUMENTS
COMMAND command to show help forOPTIONS
--all see all commands in CLI
```_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v2.1.6/src/commands/help.ts)_
## `surfboard init`
initialize new Ride project
```
USAGE
$ surfboard init
```_See code: [src/commands/init.ts](https://github.com/wavesplatform/surfboard/blob/v2.3.0/src/commands/init.ts)_
## `surfboard repl`
run ride repl
```
USAGE
$ surfboard replOPTIONS
--env=env which environment should be used for test
```_See code: [src/commands/repl.ts](https://github.com/wavesplatform/surfboard/blob/v2.3.0/src/commands/repl.ts)_
## `surfboard run FILE`
run js script with with blockchain context
```
USAGE
$ surfboard run FILEARGUMENTS
FILE path to scriptOPTIONS
--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](https://github.com/wavesplatform/surfboard/blob/v2.3.0/src/commands/run.ts)_
## `surfboard test [FILE]`
run test
```
USAGE
$ surfboard test [FILE]ARGUMENTS
FILE path to test fileOPTIONS
-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](https://github.com/wavesplatform/surfboard/blob/v2.3.0/src/commands/test.ts)_