Skip to main content

convert_invert/
lib.rs

1//! # convert-invert
2//!
3//! A Spotify-playlist-to-Soulseek bridge: matches Spotify tracks against the Soulseek
4//! network, scores candidates with a Levenshtein-based judge, and downloads the best
5//! match.
6//!
7//! This crate provides the core logic for searching, judging, and downloading tracks,
8//! orchestrated by a managed run cycle.
9//!
10//! ## Core Components
11//!
12//! - **Managers**: The system is divided into specialized managers for search, judging,
13//!   downloads, database interaction, and playlist querying.
14//! - **Run Cycle**: A central orchestration loop that manages task lifecycle using `tokio::task::JoinSet`.
15//! - **Persistence**: Uses PostgreSQL (via Diesel) for authoritative state and Redis for
16//!   real-time progress and task queuing.
17
18pub mod internals;