Hello everyone!
This GitHub repo will contain all the examples and workshops files we create during our time together.
Rustup provides you with all the software to compile and run Rust applications, e.g.
- Cargo - build tool and package manager
rustfmt
- Auto-formatting tool for Rust codeclippy
- Linting for common mistakes
and many more. Rustup also allows you to install different compile targets and multiple toolchains, as well as keeping your toolchains up to date.
After installing, you should have a set of new command line tools available.
- Open a Terminal/Shell/Command Line of your choice
- Navigate to a folder you want to use for your Rust projects
- Enter
$ cargo new installation-test
- Cargo will create a "Hello World" application for you. Enter the newly created directory
$ cd installation-test
- Build and run
$ cargo run
If you see compile information and Hello, world!
printed out on your command line, you are ready to go!
During the workshop, we will use Visual Studio Code as editor. It's free, fast and very extensible. Making yourself familiar with VS Code is highly recommended.
However, working with VS Code is not required. If you have a preferred editor with Rust support you're more productive with, please feel free to use whatever you like. What we highyly recommend though, is checking if your editor has support for Rust analyzer.
To work effeciently, please install a couple of extensions that help you developing Rust. Note: Please don't install the recommendend Rust extension. It's outdated and the community decided to move to other tools.
You can search and install VS Code extensions through the menu on the side
We recommend the following extensions:
-
rust-analyzer. This is the main extension for Rust development, with the best language support available. Note: This extension is also available for other IDEs and editors, check out their website
-
crates. This extension helps installing dependencies from crates.io
-
Better TOML. TOML is the format that the dependency manager Cargo uses to manage dependencies. This extension helps formatting and editing TOML files
-
CodeLLDB. All Rust code is compiled against LLVM. This extension helps debugging LLVM code inside VS Code