Setting Up Your Environment
In order to develop within the Fluence solution, Node, Rust and small number of tools are required.

NodeJs

Download the [installer](https://nodejs.org/en/download/) for your platform and follow the instructions.

Rust

If you're on Linux, MacOS or other Unix-like, you can install Rust like this:
1
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
Copied!
If you're on other platform, please see rustup.rs for instructions.
Once Rust is installed, we need to expand the toolchain and include nightly build and the Wasm compile target.
1
rustup install nightly
2
rustup target add wasm32-wasi
Copied!
To keep Rust and the toolchains updated:
1
rustup self update
2
rustup update
Copied!
There are a number of good Rust installation and IDE integration tutorials available. DuckDuckGo is your friend but if that's too much effort, have a look at koderhq. Please note, however, that currently only VSCode is supported with Aqua syntax support.

Aqua Tools

The Aqua compiler and standard library and be installed via npm:
1
npm -g install @fluencelabs/aqua
2
npm -g install @fluencelabs/aqua-lib
Copied!
If you are a VSCode user, note that am Aqua syntax-highlighting extension is available. In VSCode, click on the Extensions button, search for aquaand install the extension.
Moreover, the aqua-playground provides a ready to go Typescript template and Aqua example. In a directory of you choice:
1
git clone [email protected]:fluencelabs/aqua-playground.git
Copied!

Marine Tools

Fluence provides several tools to support developers. marine is the command line compiler required to compile Rust modules to the necessary wasm32-wasi target. mrepl, on the other hand, is a command line tool providing access to the Marine runtime to test and experiment with marine modules and services locally:
1
cargo install marine
2
cargo +nightly install mrepl
Copied!

Aqua Compiler And CLI Tool

Fluence aqua provides both compile and cli tools for the lifecycle manage management of distributed services including deployment and execution tools.
1
npm -g install @fluencelabs/aqua
Copied!

Fluence JS

For frontend development, the Fluence JS is currently the favored, and only, tool.
1
npm install @fluencelabs/fluence
Copied!