Saito consists of three separate-but-related software packages. The following links contain more detailed information on these packages along with instructions on how to compile and install them under Linux. We have a separate page with installation instructions for Mac users.
The Saito Rust client is a command-line application built to handle consensus and network operations. If you want to run a high-throughput network node this is the software you need.
Please see the relevant sections above for detailed instructions on installing the software packages you need. If you are building applications you will only need to install Saito-Lite-Rust. If you are interested in contributing to protocol development you will need to install the Rust codebases as well.
Once you have installed Saito-Lite-Rust you will be ready to configure the server to run the applications you wish to support and provide them to browsers on-demand. This section covers these follow-on configuration steps.
Saito uses two main configuration files. The first is
config/options which specifies network configuration options like the IP address on which the server runs and the ports it should open and the peers to which it should connect. A second
config/modules.config.js file specifies which modules should run on the server and any browsers that connect to it.
npm run nuke will create fresh versions of these configuration files from template files that are stored in the
config directory. It will also compiles a compressed version of Saito from the
You can always reset your client by running the "nuke" command, but if you wish to change the applications supported on your server without resetting the blockchain, you can run the following instruction instead:
npm run compile
compile script supports additional logging options, which can be specified using the
-l flags. This feature allows you to set the desired log level for the compilation process.
To set a specific log level, use one of the following commands:
npm run compile -- --loglevel=<level>
npm run compile -- -l <level>
Where level can be one of the following:
npm run compile -- --loglevel=warn
npm run compile -- -l warn
nuke scripts can be run with a
npm run compile dev
npm run nuke dev
When this flag is used:
The payload is 2 to 3 times larger than otherwise but makes in-browser
CSS files are linked (
@include() CSS source files, rather than
being a concatentation of the source CSS). This makes CSS development
The result is that many more files are downloaded by the client, but in-browser debugging is much easier
Once you have run
npm start above it will take a few moments for the Saito software to initialize and start. You will eventually see an animated Saito logo scroll across your terminal. Once that is done simply open a browser and visit:
This will load the Saito Arcade - one of our default applications. If everything has gone as planned, you now have a working version of Saito for use in local testing or development.
Take your next steps into application development with tutorial one which explains how to build a simple application that attaches data to transactions and broadcasts them into the network.
This repository includes older branches and versions which are not being maintained. If you are interested in developing on the public site, please make sure you are using the latest two live repositories: