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 — features, screenshots, supported formats, FAQ, and downloads.
- 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.
You need JDK 21 (e.g. from Adoptium). Maven comes bundled via the wrapper — no separate install.
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.jarOn macOS/Linux, if
javaisn't on yourPATH, activate a JDK 21 first (e.g. via sdkman:sdk use java 21).
CI builds and tests on Java 21 and 25 plus a Windows smoke build.
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.mdfor the project layout, module layering, build/test commands, and code conventions (GPL header, JAXB test objects, IntelliJ GUI Designer.formfiles, …). - Translations go through Weblate, not direct edits: hosted.weblate.org/projects/routeconverter.
- Issues: https://github.com/cpesch/RouteConverter/issues
Contributors are listed in CONTRIBUTORS.txt.
- File → Open… the root
pom.xml. - Settings → Editor → GUI Designer: choose "Generate GUI into: Java source
code" and disable "Automatically copy form runtime classes…". Layout is
edited in the
.formfiles, not the generated$$$setupUI$$$blocks.
Eclipse (m2e) and NetBeans work too — import the root pom.xml as a Maven project.
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, with a certificate issued by the SignPath Foundation. 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.
RouteConverter is licensed under the GNU General Public License v2 — see
LICENSE-GPL.txt. By contributing, you agree your code ships
under the GPL.
Have fun! — Christian Pesch (@cpesch)