use shardx::{LaunchOptions, Profile, ShardX, ShardXOptions};
#[tokio::main]
async fn main() -> anyhow::Result<()> {
let sdk = ShardX::new(ShardXOptions::default())?;
let mut profile = sdk.create_profile(None).await?;
println!("created profile {}", profile.id);
profile.set_noise(&["canvas", "audio", "webgl"]);
sdk.save_profile(&profile)?;
println!("saved profiles: {:?}", sdk.list_saved_profiles()?);
let session = sdk
.session(
profile.clone(),
LaunchOptions {
randomize: false,
..Default::default()
},
)
.await?;
let page = session.new_page("https://example.com").await?;
println!("title: {:?}", page.get_title().await?);
session.close().await?;
let _reopened: Profile = sdk.open_profile(&profile.id)?;
Ok(())
}