{"id":23328846,"url":"https://github.com/tkrajina/gpxgo","last_synced_at":"2025-08-22T22:33:25.373Z","repository":{"id":19091993,"uuid":"22319888","full_name":"tkrajina/gpxgo","owner":"tkrajina","description":"GPX library for golang","archived":false,"fork":false,"pushed_at":"2024-05-20T22:12:33.000Z","size":459,"stargazers_count":94,"open_issues_count":4,"forks_count":23,"subscribers_count":8,"default_branch":"master","last_synced_at":"2024-11-17T12:17:01.050Z","etag":null,"topics":["go","golang","gpx","gpx-library"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tkrajina.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.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}},"created_at":"2014-07-27T19:31:30.000Z","updated_at":"2024-11-11T00:41:19.000Z","dependencies_parsed_at":"2023-01-13T20:10:06.856Z","dependency_job_id":"9defc238-03e1-46dc-8314-1eae7b5907b4","html_url":"https://github.com/tkrajina/gpxgo","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tkrajina%2Fgpxgo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tkrajina%2Fgpxgo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tkrajina%2Fgpxgo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tkrajina%2Fgpxgo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tkrajina","download_url":"https://codeload.github.com/tkrajina/gpxgo/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230646939,"owners_count":18258806,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["go","golang","gpx","gpx-library"],"created_at":"2024-12-20T21:28:40.465Z","updated_at":"2024-12-20T21:28:41.046Z","avatar_url":"https://github.com/tkrajina.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Go GPX library\n\ngpxgo is a golang library for parsing and manipulating GPX files. GPX (GPS eXchange Format) is a XML based file format for GPS track logs. \n\n## Example:\n\n    import (\n        ...\n        \"github.com/tkrajina/gpxgo/gpx\"\n        ...\n    )\n\n    gpxBytes := ...\n\tgpxFile, err := gpx.ParseBytes(gpxBytes)\n\tif err != nil {\n        ...\n\t}\n\n    // Analyize/manipulate your track data here...\n\tfor _, track := range gpxFile.Tracks {\n\t\tfor _, segment := range track.Segments {\n\t\t\tfor _, point := range segment.Points {\n\t\t\t\tfmt.Print(point)\n\t\t\t}\n\t\t}\n\t}\n\n    // (Check the API for GPX manipulation and analyzing utility methods)\n\n    // When ready, you can write the resulting GPX file:\n\txmlBytes, err := gpxFile.ToXml(gpx.ToXmlParams{Version: \"1.1\", Indent: true})\n    ...\n\n## GPX Compatibility\n\nGpxgo can read/write both GPX 1.0 and GPX 1.1 files.\n\nGPX extensions support is experimental from v1.1.0 on.\n\n## gpxinfo\n\n`gpxinfo` is a command line utility for writing basic stats from gpx files:\n\n    $ go run gpxinfo.go test_files/Mojstrovka.gpx\n    File: /Users/puzz/golang/src/github.com/tkrajina/gpxgo/test_files/Mojstrovka.gpx\n    GPX name:\n    GPX desctiption:\n    GPX version: 1.0\n    Author:\n    Email:\n\n\n    Global stats:\n     Points: 184\n     Length 2D: 2.6958067369682577\n     Length 3D: 3.00439590990862\n     Bounds: 46.430350, 46.435641, 13.738842, 13.748333\n     Moving time: 0\n     Stopped time: 0\n     Max speed: 0.000000m/s = 0.000000km/h\n     Total uphill: 446.4893280000001\n     Total downhill: 417.65524800000026\n     Started: 1901-12-13 20:45:52 +0000 UTC\n     Ended: 1901-12-13 20:45:52 +0000 UTC\n\n\n    Track #1:\n         Points: 184\n         Length 2D: 2.6958067369682577\n         Length 3D: 3.00439590990862\n         Bounds: 46.430350, 46.435641, 13.738842, 13.748333\n         Moving time: 0\n         Stopped time: 0\n         Max speed: 0.000000m/s = 0.000000km/h\n         Total uphill: 446.4893280000001\n    ...etc...\n\n## History\n\nGpxgo is based on:\n\n * https://github.com/tkrajina/gpxpy (python gpx library)\n * https://github.com/ptrv/go-gpx (an earlier port of gpxpy)\n\n# License\n\ngpxgo is licensed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftkrajina%2Fgpxgo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftkrajina%2Fgpxgo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftkrajina%2Fgpxgo/lists"}