LogoMist

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:

Terminal
cargo install mist-lang@0.0.1-alpha2

Once the installation finishes, verify it by checking the version:

Terminal
mist version

2. 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:

Terminal
cargo new my-mist-app
cd my-mist-app

Configure 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.

mist.json
{
  "src": "src",
  "output": "build"
}

Since Mist compiles down to Rust, you need to point Cargo to the generated output. Update your Cargo.toml to include the following:

Cargo.toml
[[bin]]
name = "main"
path = "build/main.rs"

Pro Tip: You’ll probably want to add /build to your .gitignore file 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:

src/main.mist
void main() {
    println!("Hello World!");
}

Build and Run

To turn your Mist code into an executable, use the build command:

Terminal
mist build

Once the build is successful, you can run your program using standard Cargo commands:

Terminal
cargo run

Pro 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

CommandDescription
mist buildCompiles your .mist files into Rust code in the output folder.
mist versionDisplays the current version of the Mist compiler.
mist helpStuck? Use this to see all available commands and options.

On this page