Expand description
libfw-client: reusable client-side transfer logic and browser glue.
The crate is intentionally split into a reusable Rust library core and a
thin wasm bridge. This allows the client logic to be consumed by Rust
code directly, while the JS/browser-facing API remains in the dedicated
WASM module.
Structs§
- Client
Config - Runtime configuration of the WASM engine.
- File
Entry - A file to transfer, identified by its virtual path.
- Local
Store - localStorage-backed store (only reachable in the browser).
- Tune
Cache - Persisted tuning cache entry (
localStorage["libfw.tune.<originHash>"]). - Tune
Event - A tuning event emitted when a window evaluation changed the state.
- Tune
Params - The shared, live parameter table.
- Tune
Stats - Smoothed transfer statistics.
Enums§
- Compress
Level - Client-side compression level configuration.
- Libfw
Error - Errors produced by the WASM engine.
- Transfer
Kind - Which transfer direction is ramping (drives which window/chunk dims move).
- Tune
Phase - Lifecycle of the tuning state machine.
Traits§
- Tune
Store - Injected persistence backend (localStorage in the browser; a map in tests).
Functions§
- backoff_
ms - Pure exponential backoff:
min(max, base << attempt)with saturation. - tune_
key - The localStorage key for a base URL:
libfw.tune.<originHash>.
Type Aliases§
- Tune
Handle - Shared handle to the tuning engine (Rc so clones share one table).