IpfsEmbed is an embeddable ipfs implementation.
use ipfs_embed::Ipfs;
use ipfs_embed::db::StorageService;
use ipfs_embed::net::{NetworkConfig, NetworkService};
use libipld::DefaultStoreParams;
use std::sync::Arc;
use std::time::Duration;
let sled_config = sled::Config::new().temporary(true);
let cache_size = 10;
let sweep_interval = Duration::from_millis(10000);
let network_timeout = Duration::from_secs(5);
let net_config = NetworkConfig::new();
let storage = Arc::new(StorageService::open(&sled_config, cache_size, sweep_interval).unwrap());
let network = Arc::new(NetworkService::new(net_config).unwrap());
let ipfs = Ipfs::<DefaultStoreParams, _, _>::new(storage, network, network_timeout);