- frontend/ crate compiles to WASM via trunk - empty Leptos app mounted to body via wasm_bindgen(start) - dependencies: leptos 0.7 CSR, leptos-use, lucide-leptos, gloo-net, web-sys - workspace cargo check passes (first time the workspace compiles end-to-end) - trunk build produces 65KB WASM + 25KB JS glue Deviations from brief: - lucide-leptos: 0.5 (brief) -> 3 (only version published) - web-sys: removed invalid features ArrayBuffer/DataView (in js-sys/wasm-bindgen) - src/main.rs -> src/lib.rs with #[wasm_bindgen(start)] to avoid bin/lib duplicate artifact
21 lines
890 B
HTML
21 lines
890 B
HTML
<!DOCTYPE html>
|
|
<html lang="id">
|
|
<head>
|
|
<meta charset="utf-8" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
<meta name="theme-color" content="#23a1eb" />
|
|
<title>IMPHNEN -- Discord Moderation</title>
|
|
<link data-trunk rel="rust" data-crate="frontend" data-wasm="frontend.wasm" />
|
|
<link data-trunk rel="copy-dir" href="public/" />
|
|
<!-- Poppins font -->
|
|
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
|
<link href="https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap" rel="stylesheet" />
|
|
<!-- Preload WASM (Trunk inlines this, but just in case) -->
|
|
<link rel="preload" href="/frontend.wasm" as="fetch" crossorigin="anonymous" />
|
|
</head>
|
|
<body>
|
|
<!-- Leptos CSR mounts to document.body by default -->
|
|
</body>
|
|
</html>
|