webbundle 0.1.4

WebBundle library
Documentation

WebBundle library

webbundle is an experimental library for WebBundle format.

Example

WebBundle Parsing

use webbundle::Bundle;
use std::io::{Read as _};

let mut bytes = Vec::new();
std::fs::File::open("example.wbn")?.read_to_end(&mut bytes)?;
let bundle = Bundle::from_bytes(bytes)?;
println!("Parsed bundle: {:#?}", bundle);
# Result::Ok::<(), anyhow::Error>(())

Creating a bundle from files

# async {
use webbundle::{Bundle, Version};

let bundle = Bundle::builder()
.version(Version::VersionB1)
.primary_url("https://example.com/index.html".parse()?)
.exchanges_from_dir("assets", "https://example.com".parse()?).await?
.build()?;
println!("Created bundle: {:#?}", bundle);
let write = std::io::BufWriter::new(std::fs::File::create("example.wbn")?);
bundle.write_to(write)?;
# Result::Ok::<(), anyhow::Error>(())
# };