Risuko

Introduction

Risuko is a Rust-powered multi-protocol download engine with a desktop app, CLI, and Node.js API.

Risuko (Ri-su-ko) is a high-performance download engine written in Rust. It supports HTTP/HTTPS, BitTorrent, ED2K, M3U8/HLS, FTP/SFTP, and RSS feeds.

The name means squirrel in Japanese, an energetic little creature that rapidly gathers and caches away every treasure it finds.

You can use Risuko in three ways:

  • Desktop App — A cross-platform GUI built with Tauri and Vue.js
  • CLI — A standalone command-line tool with full feature parity
  • Node.js API — Native bindings via napi-rs for embedding in your applications

Supported Protocols

ProtocolDescription
HTTP/HTTPSMulti-threaded range-based downloads with connection pooling
BitTorrentMagnet links, .torrent files, dual-stack DHT, LSD, MSE/PE encryption, UPnP port mapping, seeding control
ED2KeDonkey2000 network protocol
M3U8/HLSHTTP Live Streaming segment downloads
FTP/SFTPFile Transfer Protocol with TLS support
RSSAutomatic feed subscription and download

Quick Example

CLI

# Download a file with 16 threads
risuko download https://example.com/large-file.zip -t 16

# Download a torrent
risuko download magnet:?xt=urn:btih:abc123...

Node.js

import { startEngine, addUri, onEvent } from "@risuko/risuko-js";

await startEngine();

onEvent((event, gid) => {
  console.log(`[${event}] ${gid}`);
});

const gid = await addUri(["https://example.com/file.zip"]);

Next Steps

On this page