https://github.com/cpesch/routeconverter
The popular GPS conversion and editing tool
https://github.com/cpesch/routeconverter
conversion editing gps routing
Last synced: 18 days ago
JSON representation
The popular GPS conversion and editing tool
- Host: GitHub
- URL: https://github.com/cpesch/routeconverter
- Owner: cpesch
- License: other
- Created: 2011-01-19T17:50:27.000Z (over 15 years ago)
- Default Branch: master
- Last Pushed: 2026-06-06T19:15:34.000Z (about 1 month ago)
- Last Synced: 2026-06-06T19:17:29.856Z (about 1 month ago)
- Topics: conversion, editing, gps, routing
- Language: Java
- Homepage: http://www.routeconverter.com
- Size: 71.6 MB
- Stars: 160
- Watchers: 10
- Forks: 43
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE-ADDENDUM.txt
- Agents: AGENTS.md
Awesome Lists containing this project
README
# RouteConverter
[](https://codecov.io/gh/cpesch/RouteConverter)
[](https://hosted.weblate.org/engage/routeconverter/)
[](LICENSE-GPL.txt)
[](https://adoptium.net/)
**RouteConverter** is a popular, free open-source tool to **display, edit, enrich and
convert** GPS routes, tracks and waypoints across **80+ formats** (GPX, KML, NMEA,
TomTom, Garmin, and many more). It's a cross-platform Java/Swing desktop app with a
map view, plus a command-line tool.
π **[routeconverter.com](https://www.routeconverter.com/)** β features, screenshots,
supported formats, FAQ, and downloads.
## Download
- **Stable releases:** https://releases.routeconverter.com/latest/
- **Prereleases (frequent):** https://releases.routeconverter.com/prerelease/
The **Windows** (`.exe`) and **macOS** (`.app`) downloads bundle a Java runtime β
nothing else to install. The **Linux** build ships as a runnable `.jar` that needs
**Java 21 or later** installed on your system.
## Build & run from source
You need **JDK 21** (e.g. from [Adoptium](https://adoptium.net/)). Maven comes
bundled via the wrapper β no separate install.
```sh
git clone git@github.com:cpesch/RouteConverter.git
cd RouteConverter
./mvnw clean package # full build + tests
# run the desktop app (build that module first):
./mvnw -pl RouteConverterLinux -am package
java -jar RouteConverterLinux/target/RouteConverterLinux.jar
# β¦or the command-line converter:
java -jar RouteConverterCmdLine/target/RouteConverterCmdLine.jar
```
> On macOS/Linux, if `java` isn't on your `PATH`, activate a JDK 21 first
> (e.g. via [sdkman](https://sdkman.io/): `sdk use java 21`).
CI builds and tests on **Java 21 and 25** plus a Windows smoke build.
## Contributing
Contributions are very welcome β bug fixes, new formats, UI improvements,
translations. π
- **Pull requests:** fork, branch, and open a PR against `master`. Keep your diff
small and focused, match the surrounding code style, and add tests for your
change. A maintainer reviews and merges every PR.
- **Conventions:** see [`AGENTS.md`](AGENTS.md) for the project layout, module
layering, build/test commands, and code conventions (GPL header, JAXB test
objects, IntelliJ GUI Designer `.form` files, β¦).
- **Translations** go through Weblate, not direct edits:
[hosted.weblate.org/projects/routeconverter](https://hosted.weblate.org/projects/routeconverter/).
- **Issues:** https://github.com/cpesch/RouteConverter/issues
Contributors are listed in [`CONTRIBUTORS.txt`](CONTRIBUTORS.txt).
### IDE setup (IntelliJ IDEA)
1. **File β Openβ¦** the root `pom.xml`.
2. **Settings β Editor β GUI Designer:** choose *"Generate GUI into: Java source
code"* and disable *"Automatically copy form runtime classesβ¦"*. Layout is
edited in the `.form` files, not the generated `$$$setupUI$$$` blocks.
Eclipse (m2e) and NetBeans work too β import the root `pom.xml` as a Maven project.
## Code signing
The Windows installers and the standalone Java artifacts are code-signed
(Authenticode / jar signature) so Windows SmartScreen and Defender recognise
them. Free code signing for open-source projects is provided by
[SignPath.org](https://about.signpath.io/), with a certificate issued by the
[SignPath Foundation](https://signpath.org/). The certificate is held in
SignPath's HSM and never leaves it β CI holds only a submitter token that can
request a signature, not extract the key.
## License
RouteConverter is licensed under the **GNU General Public License v2** β see
[`LICENSE-GPL.txt`](LICENSE-GPL.txt). By contributing, you agree your code ships
under the GPL.
Have fun! β Christian Pesch ([@cpesch](https://github.com/cpesch))