Get Started
This guide will walk you through installing the Mist CLI, setting up your development environment, and compiling your very first program.
1. Installation
Mist is currently distributed as a Cargo crate. To get started, you'll need to have the Rust toolchain installed.
Run the following command to install the Mist compiler:
cargo install mist-lang@0.0.1-alpha2Once the installation finishes, verify it by checking the version:
mist version2. Setting Up Your Project
Mist works alongside Cargo to handle the heavy lifting. Follow these steps to prepare your environment for your first "Hello World" program.
Initialize a New Project
If you haven't already, create a new Cargo project and navigate into the directory:
cargo new my-mist-app
cd my-mist-appConfigure Mist
Create a mist.json file in your root directory. This tells the compiler where to look for your source code and where to place the generated Rust files.
{
"src": "src",
"output": "build"
}Link Cargo to Mist
Since Mist compiles down to Rust, you need to point Cargo to the generated output. Update your Cargo.toml to include the following:
[[bin]]
name = "main"
path = "build/main.rs"Pro Tip: You’ll probably want to add
/buildto your.gitignorefile to keep your repository clean!
3. Your First Program
Now for the fun part! Create a new file at src/main.mist and add the following code:
void main() {
println!("Hello World!");
}Build and Run
To turn your Mist code into an executable, use the build command:
mist buildOnce the build is successful, you can run your program using standard Cargo commands:
cargo runPro Tip: If you encounter any rust errors, head to the build directory and analyze the output, if you see anything unusual in the output, report the issue at https://github.com/mist-go/mist
Command Reference
| Command | Description |
|---|---|
mist build | Compiles your .mist files into Rust code in the output folder. |
mist version | Displays the current version of the Mist compiler. |
mist help | Stuck? Use this to see all available commands and options. |