mirror of
https://github.com/yewstack/yew.git
synced 2025-12-08 21:26:25 +00:00
* 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>
55 lines
2.1 KiB
Plaintext
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)
|