mirror of
https://github.com/penpot/penpot.git
synced 2025-12-11 22:14:05 +01:00
* ♻️ Refactor path wasm code to its own wasm submodule * ♻️ Use unified enum for RawSegmentData and transmute to deserialize * ♻️ Move set_shape_path_attrs to wasm::paths module * 💄 Unify repr declarations
render-wasm
Canvas-based WebAssembly render engine for Penpot.
This is a Rust crate that targets Emscripten (wasm32-unknown-emscripten). Underneath, it uses Skia via custom binaries of the rust-skia crate.
How to build
With the Penpot Development Environment running, create a new tab in the tmux.
cd penpot/render-wasm
./build
The build script will compile the project and copy the .js and .wasm files to their correct location within the frontend app.
Edit your local frontend/resources/public/js/config.js to add the following flags:
enable-feature-render-wasmto enable this render engine.enable-render-wasm-dpr(optional), to enable using the device pixel ratio.