This is the repository for Makepad, a new way to build UIs in Rust for both native and the web.
- Makepad Discord Server
- Rik Arends: @rikarends on twitter
- Eddy Bruël: -
- Sebastian Michailidis: @okpokpokp.bsky.social on Bluesky
This is the repository for Makepad, a new way to build UIs in Rust for both native and the web. Makepad consists of multiple crates, but the top level crate is makepad-widgets.
- UI Zoo offers a live overview of our growing widgetset. Its source additionally serves as reference to get you started.
- IronFish is a feature rich synthesizer and Makepad's first complete example application. It is developed by This Is Not Rocket Science under a MIT license.
- FractalZoomer using a tiled SIMD webworker renderer and GPU accelerated zooming / coloring.
- Robrix is a Matrix chat client written in Rust to demonstrate the functionality of Project Robius, a framework for multi-platform application development in Rust. Robrix is written using Makepad.
- Moly is an AI LLM client written in Rust, that demonstrates the power of Makepad and Project Robius, a framework for multi-platform application development in Rust.
To build the Makepad crates you first need to install Rust.
Our native builds work on the stable Rust toolchain. However, some of the errors generated by Makepad at runtime (particulary those originating in our DSL) do not contain line information unless you use the nightly Rust toolchain. Moreover, our web builds only work on nightly for now. For this reason, we recommend that you build Makepad using the nightly Rust toolchain.
For the non standard build targets (apple ios, apple tvos, android, wasm) we have a buildtool called 'cargo-makepad' that you need to install.
Install it from the repo: cargo install --path=./tools/cargo_makepad
Now this tool can be used to install the toolchains you need for each platform:
cargo makepad wasm install-toolchain
cargo makepad apple ios install-toolchain
cargo makepad apple tvos install-toolchain
cargo makepad android --abi=all install-toolchain
Makepad Studio allows you to easily build and view the examples. It uses cargo-makepad internally, so be sure to install cargo-makepad as shown above.
cargo run -p makepad-studio --release
Or install it from cargo (might be behind the repo)
cargo install makepad-studio
If you build the wasm applications, you can open it on: http://127.0.0.1:8010