Rust / Apache-2.0 / In development

A modern torrent client.
Built for performance.

CLI, headless daemon, or Rust library. One async engine.

Install

Rust library
cargo add spill
CLI
cargo install spill --locked

Planned commands. Packages not published yet. Requires the Rust toolchain.

Single-owner state

One Tokio coordinator per torrent owns peers, piece picking, discovery, and status.

Adaptive pipelining

Per-peer request windows follow transfer rate, capped at 500 requests and the peer’s advertised limit.

Storage backpressure

A bounded writer queue pauses socket reads when full. Blocks go to storage as they arrive.

Parallel verification

Read pieces back and SHA-1 check before sharing. Up to two blocking hash jobs run alongside writes.

Pluggable storage

The Storage trait owns I/O, finalization, and resume data. Paths and durability policy stay in the backend.

Fingerprint-based resume

Reuse verified pieces when storage fingerprints match. Recheck changed pieces before networking.