32 Commits

Author SHA1 Message Date
Nils 28425a2e3a Merge pull request #15 from itsnotTalha/master
Added search bar to search exact co ordinate from map
2026-04-28 21:49:25 +02:00
Nils b9b139112d hamburg 2026-04-28 21:48:13 +02:00
Nils cd490f7643 Merge pull request #19 from Cyclenerd/dependabot/github_actions/softprops/action-gh-release-3.0.0
Build(deps): Bump softprops/action-gh-release from 2.5.0 to 3.0.0
2026-04-28 21:18:12 +02:00
Nils 00921d4559 Merge pull request #17 from Cyclenerd/dependabot/github_actions/actions/download-artifact-8
Build(deps): Bump actions/download-artifact from 7 to 8
2026-04-28 21:18:02 +02:00
Nils 6710302eb6 Merge pull request #16 from Cyclenerd/dependabot/github_actions/actions/upload-artifact-7
Build(deps): Bump actions/upload-artifact from 6 to 7
2026-04-28 21:17:52 +02:00
dependabot[bot] 43c03e2f19 Build(deps): Bump softprops/action-gh-release from 2.5.0 to 3.0.0
Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release) from 2.5.0 to 3.0.0.
- [Release notes](https://github.com/softprops/action-gh-release/releases)
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)
- [Commits](https://github.com/softprops/action-gh-release/compare/v2.5.0...v3.0.0)

---
updated-dependencies:
- dependency-name: softprops/action-gh-release
  dependency-version: 3.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-13 13:42:31 +00:00
dependabot[bot] af99a2fb60 Build(deps): Bump actions/download-artifact from 7 to 8
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 7 to 8.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v7...v8)

---
updated-dependencies:
- dependency-name: actions/download-artifact
  dependency-version: '8'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-02 13:39:18 +00:00
dependabot[bot] 936bf423f0 Build(deps): Bump actions/upload-artifact from 6 to 7
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 6 to 7.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v6...v7)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-02 13:39:13 +00:00
itsnotTalha 57693200d3 Added search bar to search exact co ordinate from map 2026-03-02 11:54:49 +06:00
Nils 6da09b9b14 meshos 2026-01-27 16:41:56 +01:00
Nils ea126cd19e Merge pull request #14 from Cyclenerd/dependabot/github_actions/actions/upload-artifact-6
Build(deps): Bump actions/upload-artifact from 5 to 6
2026-01-27 16:37:07 +01:00
Nils bf82363e07 Merge pull request #13 from Cyclenerd/dependabot/github_actions/actions/checkout-6
Build(deps): Bump actions/checkout from 5 to 6
2026-01-27 16:36:56 +01:00
Nils 4f754129e9 Merge pull request #12 from Cyclenerd/dependabot/github_actions/golangci/golangci-lint-action-9
Build(deps): Bump golangci/golangci-lint-action from 8 to 9
2026-01-27 16:36:44 +01:00
Nils c7ae6cbcc7 Merge pull request #11 from Cyclenerd/dependabot/github_actions/actions/download-artifact-7
Build(deps): Bump actions/download-artifact from 6 to 7
2026-01-27 16:36:27 +01:00
Nils 7430f206ef Merge pull request #10 from Cyclenerd/dependabot/github_actions/softprops/action-gh-release-2.5.0
Build(deps): Bump softprops/action-gh-release from 2.4.1 to 2.5.0
2026-01-27 16:36:15 +01:00
dependabot[bot] aef607d2cd Build(deps): Bump actions/upload-artifact from 5 to 6
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 5 to 6.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-26 14:02:11 +00:00
dependabot[bot] 6e2d7805d9 Build(deps): Bump actions/checkout from 5 to 6
Bumps [actions/checkout](https://github.com/actions/checkout) from 5 to 6.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-26 14:02:06 +00:00
dependabot[bot] b62f361d12 Build(deps): Bump golangci/golangci-lint-action from 8 to 9
Bumps [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action) from 8 to 9.
- [Release notes](https://github.com/golangci/golangci-lint-action/releases)
- [Commits](https://github.com/golangci/golangci-lint-action/compare/v8...v9)

---
updated-dependencies:
- dependency-name: golangci/golangci-lint-action
  dependency-version: '9'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-26 14:02:02 +00:00
dependabot[bot] 57c4327b0a Build(deps): Bump actions/download-artifact from 6 to 7
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 6 to 7.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v6...v7)

---
updated-dependencies:
- dependency-name: actions/download-artifact
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-26 14:01:59 +00:00
dependabot[bot] 0ac818f61d Build(deps): Bump softprops/action-gh-release from 2.4.1 to 2.5.0
Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release) from 2.4.1 to 2.5.0.
- [Release notes](https://github.com/softprops/action-gh-release/releases)
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)
- [Commits](https://github.com/softprops/action-gh-release/compare/v2.4.1...v2.5.0)

---
updated-dependencies:
- dependency-name: softprops/action-gh-release
  dependency-version: 2.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-26 14:01:55 +00:00
Nils bbc0203a4e Merge pull request #8 from Cyclenerd/dependabot/github_actions/actions/download-artifact-6
Build(deps): Bump actions/download-artifact from 4 to 6
2026-01-24 16:24:36 +01:00
Nils a89fc917ad Merge pull request #7 from Cyclenerd/dependabot/github_actions/actions/upload-artifact-5
Build(deps): Bump actions/upload-artifact from 4 to 5
2026-01-24 16:24:26 +01:00
Nils 993228788c Merge pull request #6 from Cyclenerd/dependabot/github_actions/softprops/action-gh-release-2.4.1
Build(deps): Bump softprops/action-gh-release from 2.2.2 to 2.4.1
2026-01-24 16:24:15 +01:00
Nils 9e59178352 Merge pull request #4 from Cyclenerd/dependabot/github_actions/actions/checkout-5
Build(deps): Bump actions/checkout from 4 to 5
2026-01-24 16:23:22 +01:00
Nils bd7421719d Merge pull request #1 from Cyclenerd/dependabot/github_actions/actions/setup-go-6
Build(deps): Bump actions/setup-go from 5 to 6
2026-01-24 16:23:08 +01:00
dependabot[bot] 3b8e4b7fd5 Build(deps): Bump actions/download-artifact from 4 to 6
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 4 to 6.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v4...v6)

---
updated-dependencies:
- dependency-name: actions/download-artifact
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-27 13:41:50 +00:00
dependabot[bot] 0284d1f611 Build(deps): Bump actions/upload-artifact from 4 to 5
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4 to 5.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-27 13:05:04 +00:00
dependabot[bot] fcb149ff4c Build(deps): Bump softprops/action-gh-release from 2.2.2 to 2.4.1
Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release) from 2.2.2 to 2.4.1.
- [Release notes](https://github.com/softprops/action-gh-release/releases)
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)
- [Commits](https://github.com/softprops/action-gh-release/compare/v2.2.2...v2.4.1)

---
updated-dependencies:
- dependency-name: softprops/action-gh-release
  dependency-version: 2.4.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-13 14:01:35 +00:00
dependabot[bot] adbabfb39e Build(deps): Bump actions/checkout from 4 to 5
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 12:55:47 +00:00
dependabot[bot] 3eb4c2f56f Build(deps): Bump actions/setup-go from 5 to 6
Bumps [actions/setup-go](https://github.com/actions/setup-go) from 5 to 6.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](https://github.com/actions/setup-go/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/setup-go
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 12:53:48 +00:00
Nils c444287468 typo fix 2025-09-02 23:32:44 +02:00
Nils b4e7912f58 meshcore 2025-09-02 23:30:54 +02:00
5 changed files with 64 additions and 34 deletions
+3 -3
View File
@@ -12,11 +12,11 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: 🛎️ Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
# https://github.com/marketplace/actions/setup-go-environment
- name: 🔧 Setup go
uses: actions/setup-go@v5
uses: actions/setup-go@v6
- name: 🧝‍♀️ Check formatting
run: |
@@ -28,7 +28,7 @@ jobs:
# https://github.com/marketplace/actions/run-golangci-lint
- name: 🌡️ Lint
uses: golangci/golangci-lint-action@v8
uses: golangci/golangci-lint-action@v9
- name: 🍳 Build
run: make native
+6 -6
View File
@@ -11,11 +11,11 @@ jobs:
steps:
- name: 🛎️ Checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
# https://github.com/marketplace/actions/setup-go-environment
- name: 🔧 Setup go
uses: actions/setup-go@v5
uses: actions/setup-go@v6
- name: 🍳 Build
run: make
@@ -26,7 +26,7 @@ jobs:
# Upload binaries
# https://github.com/marketplace/actions/upload-a-build-artifact
- name: 📤 Upload
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v7
with:
name: offline-map-tile-downloader-artifact
path: offline-map-tile-downloader-*
@@ -40,7 +40,7 @@ jobs:
# Download binaries
# https://github.com/marketplace/actions/download-a-build-artifact
- name: 📥 Download
uses: actions/download-artifact@v5
uses: actions/download-artifact@v8
with:
name: offline-map-tile-downloader-artifact
- name: 🌡️ Test
@@ -52,7 +52,7 @@ jobs:
runs-on: macos-latest
steps:
- name: 📥 Download
uses: actions/download-artifact@v5
uses: actions/download-artifact@v8
with:
name: offline-map-tile-downloader-artifact
- name: 🌡️ Test
@@ -64,7 +64,7 @@ jobs:
runs-on: windows-latest
steps:
- name: 📥 Download
uses: actions/download-artifact@v5
uses: actions/download-artifact@v8
with:
name: offline-map-tile-downloader-artifact
- name: 🌡️ Test
+8 -8
View File
@@ -13,11 +13,11 @@ jobs:
steps:
- name: 🛎️ Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6
# https://github.com/marketplace/actions/setup-go-environment
- name: 🔧 Setup go
uses: actions/setup-go@v5
uses: actions/setup-go@v6
- name: 🍳 Build
run: make
@@ -28,7 +28,7 @@ jobs:
# Upload binaries
# https://github.com/marketplace/actions/upload-a-build-artifact
- name: 📤 Upload
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v7
with:
name: offline-map-tile-downloader-artifact
path: offline-map-tile-downloader-*
@@ -42,7 +42,7 @@ jobs:
# Download binaries
# https://github.com/marketplace/actions/download-a-build-artifact
- name: 📥 Download
uses: actions/download-artifact@v4
uses: actions/download-artifact@v8
with:
name: offline-map-tile-downloader-artifact
- name: 🌡️ Test
@@ -54,7 +54,7 @@ jobs:
runs-on: macos-latest
steps:
- name: 📥 Download
uses: actions/download-artifact@v4
uses: actions/download-artifact@v8
with:
name: offline-map-tile-downloader-artifact
- name: 🌡️ Test
@@ -66,7 +66,7 @@ jobs:
runs-on: windows-latest
steps:
- name: 📥 Download
uses: actions/download-artifact@v4
uses: actions/download-artifact@v8
with:
name: offline-map-tile-downloader-artifact
- name: 🌡️ Test
@@ -79,13 +79,13 @@ jobs:
steps:
# Download all artifacts to the current working directory
- name: 📥 Download gcosts
uses: actions/download-artifact@v4
uses: actions/download-artifact@v8
with:
name: offline-map-tile-downloader-artifact
# Release, upload files
# https://github.com/softprops/action-gh-release
- name: ✨ Release
uses: softprops/action-gh-release@v2.2.2
uses: softprops/action-gh-release@v3.0.0
with:
files: |
offline-map-tile-downloader-linux-x86_64
+17 -4
View File
@@ -6,7 +6,7 @@
[![Badge: Windows](https://img.shields.io/badge/Windows-008080.svg?logoColor=white)](#readme)
[![Badge: Go](https://img.shields.io/badge/Go-%2300ADD8.svg?logo=go&logoColor=white)](#readme)
**Create your own offline maps for any location on Earth!** This tool allows you to download map tiles from various sources and use them in your offline applications, with a special focus on the needs of the **Off-Grid** and **Meshtastic** communities.
**Create your own offline maps for any location on Earth!** This tool allows you to download map tiles from various sources and use them in your offline applications, with a special focus on the needs of the **Off-Grid**, **Meshtastic** and **MeshCore** communities.
| Download | Offline Mode |
|----------|--------------|
@@ -19,7 +19,7 @@ Whether you're a hiker, prepper, sailor, or just someone who wants to be prepare
In a world that's increasingly reliant on internet connectivity, being able to access information offline is a superpower. This is especially true for:
* **The Off-Grid Community:** When you're living off the grid, you can't rely on a stable internet connection. This tool allows you to have detailed maps of your surroundings, which is essential for navigation, resource management, and safety.
* **The Meshtastic Community:** Meshtastic is a fantastic open-source, off-grid, decentralized, mesh networking project. It allows you to send messages and other data over long distances without needing the internet. This tool allows you to create custom map tiles that can be used with the Meshtastic UI, giving you a visual representation of your mesh network on a map, even when you're completely offline.
* **The Meshtastic and MeshCore Community:** This tool allows you to create custom map tiles that can be used with the Meshtastic UI or MeshCore Ripple Firmware, giving you a visual representation of your mesh network on a map, even when you're completely offline.
## Features
@@ -28,7 +28,7 @@ In a world that's increasingly reliant on internet connectivity, being able to a
* **Concurrent Downloads:** Downloads multiple tiles concurrently for faster performance.
* **Rate Limiting:** Limits the number of tile downloads per second to avoid overloading the tile server.
* **Cancellable Downloads:** Cancel ongoing downloads at any time.
* **8-bit PNG Conversion:** Option to convert downloaded tiles to 8-bit PNGs, ideal for devices with limited color palettes like the Meshtastic UI.
* **8-bit PNG Conversion:** Option to convert downloaded tiles to 8-bit PNGs, ideal for devices with limited color palettes like the Meshtastic UI and Ripple Firmware.
* **Offline Tile Server:** Serve downloaded tiles directly from the application, allowing you to use them in offline map applications.
* **Cross-platform:** Works on Windows, macOS, and Linux.
@@ -126,7 +126,7 @@ Example:
./offline-map-tile-downloader -port 8081 -maps-directory my-tile-cache -max-workers 5 -rate-limit 25
```
## Meshtastic Integration
## Meshtastic UI Integration
This tool is perfect for creating offline maps for the Meshtastic UI. Here's how to do it:
@@ -138,6 +138,19 @@ This tool is perfect for creating offline maps for the Meshtastic UI. Here's how
2. **Use with Meshtastic:**
* The downloaded tiles are stored in the `maps` directory. You can now use these tiles with the Meshtastic UI. For more information on how to do this, please refer to the [Meshtastic documentation](https://meshtastic.org/docs/software/meshtastic-ui/#map).
## MeshCore Ripple and MeshOS Firmware Integration
This tool is perfect for creating offline maps for the MeshCore Ripple and MeshOS Firmware.
Here's how to do it:
1. **Download the tiles:**
* Select the area you want to download.
* **Check the "Convert to 8-bit" checkbox.** This is recommended for the Ripple and MeshOS firmware to save storage space.
* Click "Download Tiles".
2. **Use with Ripple Firmware:**
* The downloaded tiles are stored in the `maps` directory. You can now use these tiles with the Ripple and MeshOS firmware. Copy the subfolder named after the selected map style to an SD card and rename it `tiles`. For more information on how to do this, please refer to the [MeshRipple Firmware documentation](https://buymeacoffee.com/ripplebiz/ultra-v7-7-guide-meshcore-users).
## Configuration
You can add your own map sources by editing the [`config/map_sources.json`](./config/map_sources.json) file. The format is simple:
+30 -13
View File
@@ -48,6 +48,11 @@
<div style="position: relative;">
<div id="map"></div>
<div class="form-container">
<div style="margin-bottom: 10px; padding-bottom: 10px; border-bottom: 1px solid #ccc;">
<label for="coord_search">Go to Coordinates:</label><br>
<input type="text" id="coord_search" placeholder="lat, lng (e.g. 53.55, 10)" style="width: 200px;">
<button type="button" id="goToBtn">Go</button>
</div>
<form id="downloadForm">
<label for="map_style">Map Style:</label>
<select id="map_style" name="map_style"></select><br>
@@ -84,23 +89,35 @@
console.error("WebSocket error:", error);
};
var map = L.map('map');
var map = L.map('map').setView([53.55, 10], 13);
var tileLayer = L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
attribution: '© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors',
maxZoom: 19
}).addTo(map);
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(function(position) {
var lat = position.coords.latitude;
var lng = position.coords.longitude;
map.setView([lat, lng], 13);
}, function() {
map.setView([53.55, 10], 11);
});
} else {
map.setView([53.55, 10], 11);
}
// Coordinate search functionality
document.getElementById('goToBtn').addEventListener('click', function() {
var input = document.getElementById('coord_search').value.trim();
var parts = input.split(',');
if (parts.length === 2) {
var lat = parseFloat(parts[0].trim());
var lng = parseFloat(parts[1].trim());
if (!isNaN(lat) && !isNaN(lng) && lat >= -90 && lat <= 90 && lng >= -180 && lng <= 180) {
map.setView([lat, lng], 13);
} else {
alert('Invalid coordinates. Latitude must be -90 to 90, longitude must be -180 to 180.');
}
} else {
alert('Please enter coordinates in format: lat, lng');
}
});
document.getElementById('coord_search').addEventListener('keypress', function(e) {
if (e.key === 'Enter') {
e.preventDefault();
document.getElementById('goToBtn').click();
}
});
var drawnItems = new L.FeatureGroup();
map.addLayer(drawnItems);
@@ -343,4 +360,4 @@
}
</script>
</body>
</html>
</html>