Fast interactive Meshtastic and MeshCore maps downloader
Project description
Map Tiles Downloader
For Meshtastic & MeshCore
This app helps you fetch map tiles quickly, for offline use. You can pick places using a simple text interface, choose tiles provider and map style, and then download the exact areas that you need. It shows download progress, speed, ETA, and estimates how much disk space will the maps use.
Install with pipx (recommended)
pipx installs Python apps into isolated environments and exposes the commands on your PATH.
macOS (Homebrew)
brew install pipx
pipx ensurepath # then restart your terminal
pipx install mt-downloader
mt-downloader # or: map-tiles-downloader
Windows (winget)
First install latest Python from the Windows Store.
Then in Windows Terminal, run (one by one):
pip install pipx
python -m pipx ensurepath # then close and restart the Terminal
pipx install mt-downloader
mt-downloader
Pre-compiled binaries
Download the installer/pre-compiled binaries from the Github Releases page.
Source code
The source code lives in the GitHub repository: tekk/map-tiles-downloader.
If you want to compile yourself
First, install the project into a virtual environment. Then launch the interactive interface and follow the prompts. Select one or more continents, countries, and regions, choose a provider (Thunderforest or OpenStreetMap), set zoom levels, and pick an output directory. If the provider needs an API key you’ll be asked for it.
MacOS / Linux
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
pip install . # note the dot at the end of command
mt-downloader
Windows
In Powershell in Windows Terminal (not cmd), run:
python -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install -r .\requirements.txt
pip install . # note the dot at the end of command
mt-downloader
If you need to automate, or prefer commands instead of the guided interface, there are bbox and kml subcommands (beta). Bounding box mode lets you fetch tiles for a given rectangle. KML mode expands points and routes into small areas around each location.
mt-downloader bbox SOUTH WEST NORTH EAST --max-zoom 12 -o ~/maps/out
mt-downloader kml /path/to/file.kml --max-zoom 12 -o ~/maps/out
For Thunderforest, set your API key once per session, or pass it with -k.
export THUNDERFOREST_API_KEY="your_key_here"
You can also preview a download without fetching data to see how many tiles you’ll get.
mt-downloader bbox 45.9668 5.7767 48.3068 8.7167 --max-zoom 12 --dry-run
That’s all you need. Launch the TUI, pick areas, and the downloader will handle the rest.
Contributing
I'll be very happy for any kind of contributions. Feel free to fork and make a PR, or open an issue. I'll try to maintain this project as long as I'll have enough spare time to do so.
This project is created and maintained with :heart: by tekk.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mt_downloader-1.3.2.tar.gz.
File metadata
- Download URL: mt_downloader-1.3.2.tar.gz
- Upload date:
- Size: 36.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
99ea94dd70dd1c13c09dc61c4c10412383068c7111a599f420f8aa7c799e8110
|
|
| MD5 |
9fef0e97959951f324db680f4206db53
|
|
| BLAKE2b-256 |
1ab4bbdff6f70b29b0894aee70afe3fa61d733c2d3e0d3f2c031e73068248139
|
File details
Details for the file mt_downloader-1.3.2-py3-none-any.whl.
File metadata
- Download URL: mt_downloader-1.3.2-py3-none-any.whl
- Upload date:
- Size: 25.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0a59d3172acc1c57949b7a6351cc0058f030a03c7b8c32e97665c618018fccca
|
|
| MD5 |
ee21c2cf56f8b505ebb0c2f022cd4ed7
|
|
| BLAKE2b-256 |
150b34836cf3daef1e2d96e0dade302277d84a4355ca947ff3b178662f5b837b
|