//! Core library for audiofiles: sync-only sample storage, VFS, tags, and analysis. No UI or async. //! //! ## Module Overview //! //! ### Storage & Organization //! - [`store`] — Content-addressed blob storage (SHA-256 hash → flat `{hash}.{ext}` directory) //! - [`vfs`] — Virtual filesystem: directory trees backed by SQLite, nodes link to content hashes //! - [`vfs_mirror`] — Exports the VFS as a symlink tree on disk (Unix only) for DAW/file manager access //! - [`vault`] — Vault registry: persistent list of known data directories with active vault selection //! //! ### Audio Analysis //! - [`analysis`] — Pipeline orchestrator: decode → feature extraction → classification → DB persistence //! - [`fingerprint`] — Near-duplicate detection via peak envelope fingerprinting and correlation //! - [`similarity`] — Weighted Euclidean distance search with optional VP-tree index //! - [`vp_tree`] — Generic vantage-point tree for sub-linear nearest-neighbor queries in metric spaces //! //! ### Metadata & Search //! - [`tags`] — Hierarchical dot-notation tag system with validation, CRUD, and prefix queries //! - [`collections`] — Named sample groups (manual or dynamic/saved-search) //! - [`search`] — Query builder with text and multi-dimensional audio feature filters //! //! ### Editing & Export //! - [`edit`] — Destructive sample editing (trim, normalize, reverse, gain, fade) on `Vec` buffers //! - [`export`] — Export pipeline: collect VFS items, optionally transcode, write to filesystem //! - [`rename`] — Pattern-based filename generation with context tokens (`{name}`, `{bpm}`, `{key}`) //! //! ### Instrument & Types //! - [`instrument`] — MIDI note mapping, ADSR envelope, key zone configuration for sampler playback //! - [`id_types`] — Strongly-typed entity ID newtypes ([`VfsId`], [`NodeId`], [`SampleHash`], etc.) //! //! ### Infrastructure //! - [`db`] — SQLite database wrapper with versioned inline migrations (sync-only, no async) //! - [`error`] — Unified error type ([`error::CoreError`]) and shared utilities //! - [`util`] — Path/file helpers and audio extension whitelist pub mod analysis; pub mod collections; pub mod db; pub mod edit; pub mod error; pub mod export; pub mod fingerprint; pub mod forge; pub mod id_types; pub mod instrument; pub mod rename; pub mod search; pub mod similarity; pub mod store; pub mod tags; pub mod util; pub mod vault; pub mod vfs; pub mod vfs_mirror; pub mod vp_tree; pub use id_types::{CollectionId, NodeId, SampleHash, VfsId}; #[cfg(test)] mod test_helpers;