syncweb-core 0.1.1-alpha.4

delay-tolerant web surfing
Documentation
//! # syncweb-core
//!
//! Core library for `syncweb`, enabling delay-tolerant web surfing and decentralized synchronization.
//!
//! This crate provides the foundational building blocks for the syncweb application, including:
//! - Decentralized folder synchronization and package management.
//! - Network and node management using the Iroh stack.
//! - File system scanning, filtering, and statistical analysis.
//! - Delay-tolerant networking capabilities.
//!
//! ## Modules
//!
//! - `allocation`: Deterministic, capacity-aware storage allocation.
//! - `error`: Common error types and `Result` aliases.
//! - `filter`: Tools for filtering files during synchronization and scanning.
//! - `folder`: Management of synchronized folders, collections, and packages.
//! - `fs`: File system utilities, including parallel scanning.
//! - `indexing`: Opt-in SQLite/FTS5 indexing for synchronized folders.
//! - `net`: Network management and routing configurations.
//! - `node`: Iroh node integration and identity management.
//! - `search`: Find engine for querying synchronized assets.
//! - `sync`: The core synchronization engine and session management.
//!
pub mod allocation;
pub mod bandwidth_stats;
pub mod daemon;
pub mod editorial;
pub mod error;
pub mod filter;
pub mod folder;
pub mod fs;
pub mod gossip;
pub mod indexing;
pub mod init;
pub mod media;
pub mod mirror;
pub mod net;
pub mod node;
pub mod parsing;
pub mod schedule;
pub mod search;
pub mod snapshot;
pub mod sort;
pub mod stat;
pub mod storage;
pub mod sync;
pub mod verify;

pub use error::{Result, SyncwebError};
pub use folder::archive_export::{DropExportOptions, DropExportResult, DropExporter, export_archive};
pub use folder::archive_import;
pub use folder::archive_import::{DropImportOptions, DropImportResult, DropImporter, import_archive};
pub use folder::archive_verify::{
    DropVerificationResult, DropVerifier, DropVerifyResult, verify_archive, verify_drop_reader,
};
pub use sync::{ActiveSession, cancel_session, is_active};