A polite, resumable downloader for the Myrient game archive with search capabilities.
MyrientDL crawls the Myrient archive, builds a local database of available games, and lets you search and download them with resumable downloads and rate limiting to be respectful to the servers.
- Clone this repository
- Install with pip:
pip install -e .
Then use with:
python -m myrientDL.cli --helpRequires Python 3.9+
-
Initialize project:
myrient-dl init
-
Discover games (takes a while first time):
myrient-dl crawl
-
Search for games:
myrient-dl search "mario" myrient-dl search "pokemon" --console "Game Boy"
-
Download games:
myrient-dl download --all myrient-dl download --console "Nintendo - Game Boy" -
Check status:
myrient-dl status myrient-dl list-games
init- Set up a project directory with config and databasecrawl- Discover available games from Myrient archivesearch <query>- Find games with fuzzy matchingdownload- Download games (supports --all, --console filters)status- Show download statisticslist-games- List games in database with filters
After running init, edit myrient-config.yml to customize:
- Download location
- Concurrent download limits
- Rate limiting settings
- File type filters
- Smart fuzzy search with game name normalization
- Resumable downloads that continue where they left off
- Per-host rate limiting to be polite to servers
- Progress tracking with rich terminal output
- SQLite database for persistent game tracking
- Console-based filtering (Game Boy, SNES, etc.)
- Interactive game selection from search results
# Set up
mkdir my-games && cd my-games
myrient-dl init
# Discover what's available
myrient-dl crawl
# Find and download games
myrient-dl search "zelda" --interactive
myrient-dl download --console "Nintendo - Game Boy Advance"
# Monitor progress
myrient-dl statusGPL3.0