veilus_fingerprint/lib.rs
1#![deny(unsafe_code)]
2#![warn(missing_docs)]
3
4//! High-level fingerprint generation API for the Veilus Browser ecosystem.
5//!
6//! Use [`FingerprintGenerator`] to generate realistic browser fingerprints.
7//! Types from `fingerprint-core` are re-exported for consumer convenience.
8//!
9//! # Quick Start
10//!
11//! ```rust,ignore
12//! use veilus_fingerprint::FingerprintGenerator;
13//!
14//! // Random fingerprint
15//! let profile = FingerprintGenerator::random()?;
16//!
17//! // Constrained
18//! let profile = FingerprintGenerator::new()
19//! .browser(BrowserFamily::Chrome)
20//! .os(OsFamily::Windows)
21//! .generate()?;
22//! ```
23
24/// Bayesian network sampling engine (ancestral sampler + constrained sampler).
25pub mod engine;
26
27/// BrowserProfile assembly from raw Bayesian network samples.
28pub(crate) mod assembler;
29
30/// Fluent builder API for fingerprint generation.
31pub mod generator;
32
33pub use engine::{sample_ancestral, sample_constrained, Constraints};
34pub use veilus_fingerprint_core::FingerprintError;
35pub use veilus_fingerprint_core::{
36 BrandVersion, BrowserFamily, BrowserFingerprint, BrowserInfo, BrowserProfile, DeviceType,
37 HttpHeaders, NavigatorFingerprint, OperatingSystem, OsFamily, ScreenFingerprint, UserAgentData,
38};
39pub use generator::FingerprintGenerator;