All through your terminal ๐Ÿ’ป

For geeks ๐Ÿ‘ฝ

npx soprox --help
Soprox 0.0.13
Usage: soprox -n <project_name> [options]
-n, --name <project_name>: your project name
-t, --template <template_name>: choose a template, hello-world as default
-a, --airdrop <address>: airdrop 100 SOL to the address
-p, --payer: create a payer with 100 SOL
-g, --git: add your git repo
-f, --force: even though the project name has existed, overwrite the program anyway
-v, --version: show version
-h, --help: show help text

For programmers ๐Ÿ‘ฉ๐Ÿ’ปโ€‹๐Ÿ‘จ๐Ÿ’ป

To create a new program,

npx soprox -n <project-name>

where <project-name> is your choice as long as it satisfies the rule of a folder name.

Without the specification of --template (or -t), SoproX will choose the hello-word program as a default template. However, you can choose among various templates that are provided by the tool. For example, you want to create a SRC20 template instead of the default,

npx soprox -n <project-name> --template src20

By replacing SRC20 to another template, SoproX offers multiple templates for your desire. See the full list of template in Plug and Play.

Template name is case sensitive โš 

Furthermore, you wish pipe the project to a git repo, the --git (or -g) option is for you.

npx soprox -n <project-name> --git <git_url>

SoproX will setup <git_url> to origin remote automatically.

Be careful that your git repo should be fresh. It means there is no commit ever. That prevents unintended errors.

Some fields in package.json won't be changed even though --git. You should update it manually. There're numerous reasons for us not to do that for you.

We also determined a few dominant options namely --version, --help, --payer, and --airdrop. We call them dominant options because when these options is referred, with regardless to other options, the tool will execute them and terminate the process immediately.

Consider an example of incorrect usage, you want to create a new-app, and output the version.

npx soprox -n new-app -v

The only thing the command above does that is to print SoproX version. That's all.