yew/website/docs/getting-started/introduction.mdx
Muhammad Hamza f6f0e34d0f
Overhaul Documentation (#2321)
* Reorganize docs

* delete wasm-build-tools.mdx

* more small updates

* i hate versioned docs

* seems like I've got the traits of the certain owl who guards over the civilization when it comes to `;`

* just work please

* Update website/docs/concepts/components/lifecycle.mdx

Co-authored-by: Julius Lungys <32368314+voidpumpkin@users.noreply.github.com>

* little things

* post merge fixes

* npm update

Co-authored-by: Julius Lungys <32368314+voidpumpkin@users.noreply.github.com>
2022-01-05 17:49:26 +02:00

55 lines
2.1 KiB
Plaintext

---
title: "Project Setup"
sidebar_label: Introduction
description: "Set yourself up for success"
---
Your local development environment will need a couple of tools to compile, build, package and debug your Yew application.
When getting started, we recommend using [Trunk](https://trunkrs.dev/). Trunk is a WASM web application
bundler for Rust.
## Installing Rust
To install Rust, follow the [official instructions](https://www.rust-lang.org/tools/install).
:::important
The minimum supported Rust version (MSRV) for Yew is `1.49.0`. Older versions can cause unexpected issues accompanied
by incomprehensible error messages. You can check your toolchain version using `rustup show` (under "active toolchain")
or alternatively `rustc --version`. To update your toolchain, run `rustup update`.
:::
## Install WebAssembly target
Rust can compile source codes for different "targets" (e.g. different processors). The compilation target for
browser-based WebAssembly is called `wasm32-unknown-unknown`.
The following command will add this target to your development environment.
```shell
rustup target add wasm32-unknown-unknown
```
## Install Trunk
Trunk is the recommended tool for managing deployment and packaging, and will be used throughout the documentation and examples.
```shell
# note that this might take a while to install, because it compiles everything from scratch
# Trunk also provides prebuilt binaries for a number of major package managers
# See https://trunkrs.dev/#install for further details
cargo install --locked trunk
```
### Other options
There are options other than Trunk that may be used for bundling Yew applications. You might want to try one of these options:
- [`wasm-pack`](https://rustwasm.github.io/wasm-pack/)
- [`wasm-run`](https://github.com/IMI-eRnD-Be/wasm-run)
- [`xtask-wasm`](https://github.com/rustminded/xtask-wasm/) (still in early development)
## Next steps
With your development environment setup, you can now either proceed with the reading the documentation.
If you like to learn by getting your hands dirty, we recommend you check out our [tutorial](../tutorial)