Highly experimental glTF validator written in Rust and compiled to WebAssembly. Setup based on rust-wasm-webpack-template.
Live Demo (check console if nothing happens)
- set up Rust and Emscripten for compiling to WebAssembly, for example using the beginning of this guide.
- may require nightly Rust. Stable (1.20) is known to work on Linux, but not on macOS (
LinkError
in the browser)
- may require nightly Rust. Stable (1.20) is known to work on Linux, but not on macOS (
npm install
npm run start
(builds and starts dev server)- open http://localhost:8080 (or use
npm run start -- --open
) - change the Rust or JavaScript code and watch the browser reload after a few seconds
- incremental compilation is recommended (
CARGO_INCREMENTAL=1
) - The .wasm bundle size is several MB and takes quite a few seconds to parse. A release build is several times smaller/faster to load:
npm run start -- --env.release
(--env.production
also minifies the JS code, but this takes again more time)
- incremental compilation is recommended (
Use npm run build
to generate an optimized build in the dist
folder (compiling the Rust code in release mode and using UglifyJS for minifying the JavaScript code). To deploy to GitHub pages use npm run deploy
.