# WASM Demo Page Configuration [page] name = "wasm-demo" title = "WebAssembly Demo" type = "wasm" description = "Demonstration of WebAssembly integration in the Web Builder Framework" [directories] src_dir = "src" dist_dir = "dist" css_src = "src/assets/css" css_dist = "dist/assets/css" svg_src = "src/assets/svg" svg_dist = "dist/assets/svg" js_src = "src/assets/js" js_dist = "dist/assets/js" [shared] css_modules = [ "@shared/base/reset.css", "@shared/base/typography.css", "@shared/utilities/colors.css" ] svg_sprites = [] [local] css_modules = [ "main.css", "wasm-ui.css" ] js_modules = [ "wasm-interface.js", "main.js" ] critical_modules = 2 minify = true remove_comments = true minify_js = true remove_js_comments = true [output] css_output = "main.min.css" html_output = "index.html" svg_sprites = "sprites.svg" js_output = "main.min.js" [svg] optimize = true precision = 2 [html] minify = true remove_comments = true remove_whitespace = true [development] port = 8080 host = "localhost" [thresholds] inline_css_max_size = 10240 inline_svg_max_size = 5120 max_total_size = 512000 [compression] enable_gzip = true gzip_ratio = 0.3 [build] parallel_builds = true cache_bust = true verbose = true [tools] js_minifier = "swc" js_minifier_path = "" js_minifier_args = ["--minify", "--target", "es2018"] css_minifier = "" html_minifier = "" [wasm] enabled = true source_dir = "src/wasm" output_dir = "dist/wasm" modules = [ { name = "compute", source = "compute/src/lib.rs", lang = "rust" } ] [wasm.rust] toolchain = "wasm-pack" target = "web" optimization = "release" features = ["wee_alloc"] scope = "" [wasm.optimization] use_wasm_opt = true opt_level = 3 shrink_level = 2 enable_simd = true enable_threads = false [wasm.loader] auto_load = true loader_name = "wasm-loader.js" streaming = true fallback = true