Three related TUI correctness bugs: - download_selector navigation (select_previous/next/last) computed items.len() - 1, panicking with an arithmetic underflow when the list was empty (e.g. a filter matched nothing). Index math is now in wrap-safe helpers that return no selection for an empty list. - update_search_results overwrote the filtered results view with the full unfiltered list on every ~100ms poll, so an active filter silently stopped working as new results streamed in. It now re-derives the filtered view from the current query. - The results pane rendered selection checkboxes by testing the display-row index against a selection set that stores unfiltered indices, so under an active filter the wrong rows showed as checked. It now maps the display index back through the filtered-index table. Filtering and index-mapping logic extracted into pure, unit-tested helpers.
soulseek-rs
A command-line client for the Soulseek peer-to-peer network.
Installation
bash cargo install soulseek-rs
This will install the soulseek-rs binary to your system.
Usage
The client provides a simple interface to search and download files from the Soulseek network.
Building from Source
cargo build --release ```
## Library
If you want to build your own Soulseek client, check out the
[soulseek-rs-lib](https://crates.io/crates/soulseek-rs-lib) library crate.