Skip to main content

libfw_client/
lib.rs

1//! libfw-client: reusable client-side transfer logic and browser glue.
2//!
3//! The crate is intentionally split into a reusable Rust library core and a
4//! thin `wasm` bridge. This allows the client logic to be consumed by Rust
5//! code directly, while the JS/browser-facing API remains in the dedicated
6//! WASM module.
7#![allow(dead_code)]
8#![recursion_limit = "512"]
9
10mod config;
11mod download;
12mod error;
13mod http;
14mod js;
15mod plan;
16mod state;
17mod tune;
18mod upload;
19
20pub use config::{backoff_ms, ClientConfig};
21pub use error::LibfwError;
22pub use plan::FileEntry;
23pub use tune::{
24    CompressLevel, LocalStore, TuneCache, TuneEvent, TuneHandle, TuneParams, TunePhase,
25    TuneStats, TuneStore, TransferKind, tune_key,
26};
27
28#[cfg(target_arch = "wasm32")]
29pub mod wasm;
30#[cfg(target_arch = "wasm32")]
31pub use wasm::{js_option_string, LibfwClient};