A TUI program to download osu! beatmap collections from osu!collector for free :3
‼️ This is a TUI (Terminal User Interface) program, so make sure to run it in terminal / command prompt.
Catboy mirrors (Central / US / Asia) tend to rate limit quickly, so keep at least one other mirror enabled.
Download the binary for your platform from the latest CI run on releases page.
Or compile and install from source:
git clone https://github.com/uwuclxdy/osu-collect
cd osu-collect
cargo install --path .Note for Windows Users: Windows Terminal or PowerShell 7+ are recommended
Run osu-collect in your terminal to launch the program. Configure, then press Enter to queue a download.
Collection URL or ID: acceptshttps://osucollector.com/collections/{id}links or just the collection ID. RequiredDownload directory: defaults to the current working directory.Threads: number of threads to spawn per collection (default 3, max 50). Automatically set todownload.concurrentfrom the config when set.Custom mirror URL: must include{id}placeholder; combines with the built-in mirror toggles below it.Skip existingverifies and skips previously downloaded maps.Auto-overwriteforces redownloads of all maps.No Videodownloads maps without video when available.
Tab/Shift+TaborUp/Downmove between fields.Spacetoggles checkboxes when focused.Enterstarts download.Left/Rightswitches between the tabs.q/Escon the home tab prompts to quit; press it again to confirm. On a download tab it cancels that download.Ctrl+Caborts every running download immediately and exits.
Each queued collection opens in its own tab, meaning you can have multiple collections downloading simultaneously. There are only some basic statistics available for now.
After downloading, follow the steps below to correctly import collection:
- Import all downloaded maps into lazer
- Click
Run first time setupandNextuntil the Import screen - Set
previous osu! installto the directory of the collection you've downloaded - Click
Import content from previous version - That's it, you can close the setup screen, and the collection should be imported!
You can create a configuration file to set default options:
~/.config/osu-collect/config.toml
%APPDATA%\osu-collect\config.toml
Look at config.toml.example for a configuration example and available options
Check TODO section to see what I have planned for the future of this project.
- Rust 1.70 or later
- For Windows: MSVC or MinGW-w64 toolchain
rustup target add x86_64-pc-windows-gnu
cargo build --release --target x86_64-pc-windows-gnuThe included build.sh script can build for both Linux and Windows:
./build.shOutputs will be in the build/ directory.
- Make this a complete cross-platform replacement for BatchBeatmapDownloader
- Collection updater tab
- Make it look more visually appealing
- official mirror (+ login)
- Many other things I can't think of..

