@operate/cli v0.0.2
Operate | CLI
Operate command line utility to help developers author and publish Ops (functions) on the BSV blockchain.
About Operate
Operate is a toolset to help developers build applications, games and services on top of Bitcoin (SV). It lets you write functions, called "Ops", and enables transactions to become small but powerful programs, capable of delivering new classes of services layered over Bitcoin.
More infomation:
Installation
The CLI is a npm package. It can be installed using npm or yarn.
# Install with npm
> npm install -g @operate/cli
# Install with yarn
> yarn global add @operate/cliUsage
Getting started
Initialise your working directory. This will generate a .bit environemnt file containing your publishing address and private key.
> operate init .You will need to fund your publishing wallet before publishing any Ops. From within your working directory, use the wallet command to see your wallet address and balance.
> operate walletGetting help
The CLI can list all available commands and provide usage instructions.
# List available commands
> operate --help
# Get help on any command
> operate [command] --helpCreating/publishing functions
Use the new command to generate a new blank function in the src folder of your working directory.
> operate new my/function -a arg1 -a arg2Publish a function
When ready (and your publishing wallet is funded), use the publish command to publish the Op to the blockchain.
> operate publish my/functionWriting Ops
An Op is a function written in Lua. A generated function will look like this:
--[[
Document the function
]]--
return function(state, arg1, arg2, ...)
state = state or {}
-- Code here
return state
endThe first argument of the function is always the state. Where a function is called in the first cell of a tape, the state will default to nil so your function should handle that.
The function can receive any number of arguments, as defined by your protocol's parameters. Within the body of the function, those arguments can be used to mutate the state in any way before returning a new, modified state.
The comment block immediately prior to the function should be used to add documentation and examples. Any Markdown formatted text can be placed here.
License
© Copyright 2019 Chronos Labs Ltd.