{"id":34369143,"url":"https://github.com/cpesch/routeconverter","last_synced_at":"2026-07-02T08:01:25.383Z","repository":{"id":1326235,"uuid":"1271699","full_name":"cpesch/RouteConverter","owner":"cpesch","description":"The popular GPS conversion and editing tool","archived":false,"fork":false,"pushed_at":"2026-06-06T19:15:34.000Z","size":75095,"stargazers_count":160,"open_issues_count":4,"forks_count":43,"subscribers_count":10,"default_branch":"master","last_synced_at":"2026-06-06T19:17:29.856Z","etag":null,"topics":["conversion","editing","gps","routing"],"latest_commit_sha":null,"homepage":"http://www.routeconverter.com","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cpesch.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE-ADDENDUM.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2011-01-19T17:50:27.000Z","updated_at":"2026-06-06T19:15:37.000Z","dependencies_parsed_at":"2023-07-06T17:32:05.710Z","dependency_job_id":"a2d46f3a-d513-4772-97c0-2e6aaed993ac","html_url":"https://github.com/cpesch/RouteConverter","commit_stats":{"total_commits":4861,"total_committers":95,"mean_commits":51.16842105263158,"dds":"0.36000822875951455","last_synced_commit":"5e994797c16569b1391e8ba7f663333c462500e9"},"previous_names":[],"tags_count":49,"template":false,"template_full_name":null,"purl":"pkg:github/cpesch/RouteConverter","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cpesch%2FRouteConverter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cpesch%2FRouteConverter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cpesch%2FRouteConverter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cpesch%2FRouteConverter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cpesch","download_url":"https://codeload.github.com/cpesch/RouteConverter/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cpesch%2FRouteConverter/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33999579,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-06T02:00:07.033Z","response_time":107,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["conversion","editing","gps","routing"],"created_at":"2025-12-18T09:04:42.091Z","updated_at":"2026-07-02T08:01:25.374Z","avatar_url":"https://github.com/cpesch.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# RouteConverter\n\n[![Test Coverage](https://codecov.io/gh/cpesch/RouteConverter/branch/master/graph/badge.svg)](https://codecov.io/gh/cpesch/RouteConverter)\n[![Translation status](https://hosted.weblate.org/widgets/routeconverter/-/svg-badge.svg)](https://hosted.weblate.org/engage/routeconverter/)\n[![License: GPL v2](https://img.shields.io/badge/license-GPL--2.0-blue.svg)](LICENSE-GPL.txt)\n[![Java 21](https://img.shields.io/badge/Java-21-orange.svg)](https://adoptium.net/)\n\n**RouteConverter** is a popular, free open-source tool to **display, edit, enrich and\nconvert** GPS routes, tracks and waypoints across **80+ formats** (GPX, KML, NMEA,\nTomTom, Garmin, and many more). It's a cross-platform Java/Swing desktop app with a\nmap view, plus a command-line tool.\n\n🌐 **[routeconverter.com](https://www.routeconverter.com/)** — features, screenshots,\nsupported formats, FAQ, and downloads.\n\n## Download\n\n- **Stable releases:** https://releases.routeconverter.com/latest/\n- **Prereleases (frequent):** https://releases.routeconverter.com/prerelease/\n\nThe **Windows** (`.exe`) and **macOS** (`.app`) downloads bundle a Java runtime —\nnothing else to install. The **Linux** build ships as a runnable `.jar` that needs\n**Java 21 or later** installed on your system.\n\n## Build \u0026 run from source\n\nYou need **JDK 21** (e.g. from [Adoptium](https://adoptium.net/)). Maven comes\nbundled via the wrapper — no separate install.\n\n```sh\ngit clone git@github.com:cpesch/RouteConverter.git\ncd RouteConverter\n\n./mvnw clean package          # full build + tests\n\n# run the desktop app (build that module first):\n./mvnw -pl RouteConverterLinux -am package\njava -jar RouteConverterLinux/target/RouteConverterLinux.jar\n\n# …or the command-line converter:\njava -jar RouteConverterCmdLine/target/RouteConverterCmdLine.jar\n```\n\n\u003e On macOS/Linux, if `java` isn't on your `PATH`, activate a JDK 21 first\n\u003e (e.g. via [sdkman](https://sdkman.io/): `sdk use java 21`).\n\nCI builds and tests on **Java 21 and 25** plus a Windows smoke build.\n\n## Contributing\n\nContributions are very welcome — bug fixes, new formats, UI improvements,\ntranslations. 🎉\n\n- **Pull requests:** fork, branch, and open a PR against `master`. Keep your diff\n  small and focused, match the surrounding code style, and add tests for your\n  change. A maintainer reviews and merges every PR.\n- **Conventions:** see [`AGENTS.md`](AGENTS.md) for the project layout, module\n  layering, build/test commands, and code conventions (GPL header, JAXB test\n  objects, IntelliJ GUI Designer `.form` files, …).\n- **Translations** go through Weblate, not direct edits:\n  [hosted.weblate.org/projects/routeconverter](https://hosted.weblate.org/projects/routeconverter/).\n- **Issues:** https://github.com/cpesch/RouteConverter/issues\n\nContributors are listed in [`CONTRIBUTORS.txt`](CONTRIBUTORS.txt).\n\n### IDE setup (IntelliJ IDEA)\n\n1. **File → Open…** the root `pom.xml`.\n2. **Settings → Editor → GUI Designer:** choose *\"Generate GUI into: Java source\n   code\"* and disable *\"Automatically copy form runtime classes…\"*. Layout is\n   edited in the `.form` files, not the generated `$$$setupUI$$$` blocks.\n\nEclipse (m2e) and NetBeans work too — import the root `pom.xml` as a Maven project.\n\n## Code signing\n\nThe Windows installers and the standalone Java artifacts are code-signed\n(Authenticode / jar signature) so Windows SmartScreen and Defender recognise\nthem. Free code signing for open-source projects is provided by\n[SignPath.org](https://about.signpath.io/), with a certificate issued by the\n[SignPath Foundation](https://signpath.org/). The certificate is held in\nSignPath's HSM and never leaves it — CI holds only a submitter token that can\nrequest a signature, not extract the key.\n\n## License\n\nRouteConverter is licensed under the **GNU General Public License v2** — see\n[`LICENSE-GPL.txt`](LICENSE-GPL.txt). By contributing, you agree your code ships\nunder the GPL.\n\nHave fun! — Christian Pesch ([@cpesch](https://github.com/cpesch))\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcpesch%2Frouteconverter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcpesch%2Frouteconverter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcpesch%2Frouteconverter/lists"}