# Getting Started: Web [*"Pack your things, we're going on an adventure!"*](https://trunkrs.dev) Dioxus is well supported for the web through WebAssembly. A build of Dioxus for the web will be roughly equivalent to the size of a React build (70kb vs 65kb), but will load significantly faster due to [WebAssembly's StreamingCompile](https://hacks.mozilla.org/2018/01/making-webassembly-even-faster-firefoxs-new-streaming-and-tiering-compiler/) option. Building Dioxus apps for the web requires much less configuration than our JavaScript counterparts. ## Tooling To develop your Dioxus app for the web, you'll need a tool to build and serve your assets. We recommend using [trunk](https://trunkrs.dev) which includes a build system, Wasm optimization, a dev server, and support for SASS/CSS. Currently, trunk projects can only build the root binary (ie the `main.rs`). To build a new Dioxus compatible project, this should get you up and running. First, [install trunk](https://trunkrs.dev/#install): ```shell $ cargo install trunk ``` Make sure the `wasm32-unknown-unknown` target is installed: ```shell $ rustup target add wasm32-unknown-unknown ``` Create a new project: ```shell $ cargo new --bin demo $ cd demo ``` Add Dioxus with the `web` features: ``` $ cargo add dioxus --features web ``` Add an `index.html` for Trunk to use. Make sure your "mount point" element has an ID of "main" (this can be configured later): ```html