Files
mist-website/content/docs/index.mdx
T
2026-05-19 15:33:24 +02:00

113 lines
3.0 KiB
Plaintext

---
title: Get Started
description: This guide will walk you through installing the Mist CLI, setting up your development environment, and compiling your very first program.
icon: Rocket
---
## 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:
```bash title="Terminal"
cargo install [email protected]
```
Once the installation finishes, verify it by checking the version:
```bash title="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:
```bash title="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.
```json title="mist.json"
{
"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:
```toml title="Cargo.toml"
[[bin]]
name = "my-mist-app"
path = "build/main.rs"
```
You can also add `/build` to your `.gitignore`.
> **Pro Tip:** create a `src/_header.rs` file with only main declared, and add this to your `Cargo.toml` (without replacing the current `[[bin]]`):
> ```toml title="Cargo.toml"
> # add this in [package]
> default-run="my-mist-app-header"
>
> # Do not replace the current [[bin]]
> [[bin]]
> name = "my-mist-app-header"
> path = "src/_header.rs"
>```
>
> And add all of the `mod`(s) from `src/main.rs`, as well as a empty `main` function, this will allow `.rs` files to be used with IDE support.
---
## 3. Your First Program
Now for the fun part! Create a new file at `src/main.mist` and add the following code:
```mist title="src/main.mist"
void main() {
println!("Hello World!");
}
```
### Build and Run
To turn your Mist code into an executable, use the `run` command:
```bash title="Terminal"
mist run
```
Or if you only want to transpile to rust (this will not give any semantic errors, only syntax errors).
```bash title="Terminal"
mist transpile
```
---
## Command Reference
| Command | Description |
| ---------------- | ----------------------------------------------- |
| `mist run` | Runs the project in the current directory |
| `mist build` | builds the project in the current directory |
| `mist transpile` | transpiles the project in the current directory |
| `mist check` | checks the project in the current directory |
| `mist version` | prints the compiler version |
| `mist help` | prints this message |