Smilo Wizard

Smilo Wizard is a command line tool that allows users to set up a development Smilo network on their local machine in less than 2 minutes.

Installation

Smilo-wizard is written in Javascript and designed to be installed as a global NPM module and run from the command line. Make sure you have Node.js/NPM installed.

Using npm:

npm install -g Smilo-wizard

Using Yarn:

yarn global add Smilo-wizard

Using Smilo Wizard

Once the global module is installed, just run:

Smilo-wizard

The wizard will then walk you through setting up a network, either using our quickstart settings (a simple 3-node Smilo network using Raft consensus), or customizing the options to fit your needs.

Options

You can also provide these flags when running Smilo-wizard:

  • -q, --quickstart create 3 node raft network with tessera and cakeshop (no user-input required)
  • -v, --verbose Turn on additional logs for debugging
  • --version Show version number
  • -h, --help Show help

Note: npx is also way to run npm modules without the need to actually install the module. Due to Smilo-wizard needing to download and cache the Smilo binaries during network setup, using npx Smilo-wizard will not work at this time.

Interacting with the Network

To explore the features of Smilo and deploy a private contract, follow the instructions on Interacting with the Network

Troubleshooting

EACCES error when doing global npm install:

Developing

Clone this repo to your local machine.

yarn install to get all the dependencies.

yarn test:watch to automatically run tests on changes

yarn start to automatically build on changes to any files in the src directory

yarn link to use your development build when you run the global npm command

Smilo-wizard to run (alternatively, you can run node build/index.js)

Contributing

Smilo Wizard is built on open source and we invite you to contribute enhancements. Upon review you will be required to complete a Contributor License Agreement (CLA) before we are able to merge. If you have any questions about the contribution process, please feel free to send an email to [email protected].