mirror of
https://github.com/storytold/figcraft.git
synced 2026-10-24 10:27:00 -06:00
The 0.3.0 web release failed packaging/web/package.sh's 24 MiB gate: the wasm grew from 22.2 MB (0.2.0) to 27.0 MB once the plugin sandbox (wasmi + wasmparser, #101) and the collaboration crates (#103-#105) joined the browser build, which still used the desktop `release` profile (opt-level 3, thin LTO, 4 codegen units). - Cargo.toml: new `web-release` profile (inherits release; opt-level "s", fat LTO, one codegen unit, no debug info, stripped). opt-level "z" measured 16.9 MB; "s" keeps render speed. - apps/figcraft-web/index.html: build with that profile, and pass the wasm features rustc emits (bulk memory etc.) to wasm-opt, which otherwise rejects the size-optimised module. - Version 0.3.0 -> 0.3.1. docs/releasing.md: the web profile and size history. Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
24 lines
1.2 KiB
HTML
24 lines
1.2 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
|
|
<title>FigCraft</title>
|
|
<link data-trunk rel="rust" data-bin="figcraft-web" data-cargo-profile="web-release" data-wasm-opt="z" data-wasm-opt-params="--enable-bulk-memory --enable-bulk-memory-opt --enable-nontrapping-float-to-int --enable-sign-ext --enable-reference-types --enable-multivalue" data-weak-refs />
|
|
<style>
|
|
html, body { margin: 0; padding: 0; width: 100%; height: 100%; overflow: hidden; background: #f5f5f5; }
|
|
#figcraft_canvas { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
|
|
#figcraft_loading { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center;
|
|
color: #6b6b6b; font: 14px system-ui, sans-serif; pointer-events: none; }
|
|
@media (prefers-color-scheme: dark) {
|
|
html, body { background: #2c2c2c; }
|
|
#figcraft_loading { color: #b8b8b8; }
|
|
}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<canvas id="figcraft_canvas"></canvas>
|
|
<div id="figcraft_loading">Loading FigCraft…</div>
|
|
</body>
|
|
</html>
|