{"id":13588375,"url":"https://github.com/merlos/iOS-Open-GPX-Tracker","last_synced_at":"2025-04-08T03:33:46.279Z","repository":{"id":21338020,"uuid":"24654935","full_name":"merlos/iOS-Open-GPX-Tracker","owner":"merlos","description":"GPS Tracker app for iOS + WatchOS. Log your tracks without limits and share them; Open source GPX tracker app written in Swift","archived":false,"fork":false,"pushed_at":"2024-12-31T15:23:52.000Z","size":7074,"stargazers_count":635,"open_issues_count":68,"forks_count":150,"subscribers_count":40,"default_branch":"master","last_synced_at":"2025-04-07T01:05:02.277Z","etag":null,"topics":["gpx","gpx-files","ios","ios-app","ios-swift","iphone","offline-maps","osm","xcode"],"latest_commit_sha":null,"homepage":"http://www.merlos.org/iOS-Open-GPX-Tracker/","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/merlos.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-09-30T20:45:05.000Z","updated_at":"2025-04-06T08:34:21.000Z","dependencies_parsed_at":"2025-01-04T12:52:04.137Z","dependency_job_id":null,"html_url":"https://github.com/merlos/iOS-Open-GPX-Tracker","commit_stats":null,"previous_names":[],"tags_count":13,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/merlos%2FiOS-Open-GPX-Tracker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/merlos%2FiOS-Open-GPX-Tracker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/merlos%2FiOS-Open-GPX-Tracker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/merlos%2FiOS-Open-GPX-Tracker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/merlos","download_url":"https://codeload.github.com/merlos/iOS-Open-GPX-Tracker/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247772772,"owners_count":20993627,"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":["gpx","gpx-files","ios","ios-app","ios-swift","iphone","offline-maps","osm","xcode"],"created_at":"2024-08-01T15:06:40.362Z","updated_at":"2025-04-08T03:33:46.271Z","avatar_url":"https://github.com/merlos.png","language":"Swift","funding_links":[],"categories":["Swift"],"sub_categories":[],"readme":"Open GPX Tracker for iOS + WatchOS\n===============================================\n\n[![Available on the app store](https://merlos.github.io/iOS-Open-GPX-Tracker/images/download-app-store.svg)](https://itunes.apple.com/app/open-gpx-tracker/id984503772)\n\nOpen GPX Tracker is a GPS logger for iOS (iPhone, iPad, iPod) with offline map cache support. Track your location, add waypoints and send your logs by email as GPX files.\n\nThis app has no annoying time restrictions, no ads and no in-app-purchases. You can create unlimited GPX traces :).\n\nIf you are goint to track without Internet... don't worry! Before you go offline, browse the area where you'll be tracking and it will be cached and available offline.\n\nWe care about your privacy, all the data recorded using the application is kept in your phone (or in your iCloud), wherever you store it. The app does not share any GPS data with us or any other 3rd pary. For more information see the [Privacy Policy](https://github.com/merlos/iOS-Open-GPX-Tracker/wiki/Privacy-Policy)\n\nRequires iOS 11.0 or above. Open GPX tracker is an open source app.\n\n![GPS Tracker logs](https://merlos.github.io/iOS-Open-GPX-Tracker/images/open-gpx-tracker-4-screenshots.png)\n\nYou can use Open GPX tracker for:\n\n - Creating routes and waypoints for editing OpenStreetMap.\n - Publishing OpenStreetMap Traces.\n - [Creating GPX files for testing your iOS apps in Xcode](https://medium.com/@merlos/how-to-simulate-locations-in-xcode-b0f7f16e126d).\n - Use it as GPS companion when you take pictures with your reflex camera.\n\n## Main Features\n\n - Displays tracking route in a map\n - Supports Apple Map Kit, [OpenStreetMap](http://wiki.openstreetmap.org/wiki/Tile_usage_policy), and [Carto DB](http://www.cartodb.com) as map sources\n - Offline maps support (of browsed areas)\n - Pause / Resume tracking\n - Add waypoint to user location\n - Add waypoint to any place in the map with a long press\n - Edit waypoint name\n - Drag \u0026 Drop waypoint pin\n - Remove waypoint\n - Load on map a saved session and continue tracking\n - Displays current location and altitude\n - Displays tracked time\n - Displays user heading (device orientation) \n - Displays location accuracy \n - Displays tracked distance (total and current segment)\n - GPX files can be imported from any other app using the share option\n - Share GPX files with other apps\n - File sharing through iTunes\n - Settings\n    - Offline cache On/Off\n    - Clear cache\n    - Select the map server.\n  - Darkmode\n  - Multi-language support (thanks to volunteers): German, English, Spanish, Finnish, French, Italian, Dutch, Portuguese (Brazil), Russian, Ukranian Chinese (simplified)\n\n### Apple Watch Features (since 1.6.0)\n- Create GPX Files on your Apple Watch\n- Pause/Resume tracking\n- Save into GPX File\n- Add waypoint to user location\n- Send file to your paired device iPhone/iPad\n- Display GPS Signal strength\n- View current location information (speed, latitude, longitude, altitude)\n\n## Install\n\nThe app is [available on the App Store](https://itunes.apple.com/app/open-gpx-tracker/id984503772), available since May 2015.\n\nAnother option to install the app is to download the source code and compile it by yourself using [Xcode](https://developer.apple.com/xcode/) and the iOS simulator. If you want to run it on a iOS device, you also need an Apple developer account.\n\n## Translate Open GPX Tracker\nOpen GPX tracker supports language translations (since 1.7.0). [See list of supported languages and how to translate the app into your language](https://github.com/merlos/iOS-Open-GPX-Tracker/wiki/How-to-translate-Open-GPX-Tracker-into-my-language).\n\n## Development\n\nThis application is written in Swift. To download the code run this command in a console:\n\n```\n git clone https://github.com/merlos/iOS-Open-GPX-Tracker.git\n```\n\nThen, to test it open the file `OpenGpxTracker.xcworkspace` with XCode.\n\nAlthough the application uses some Cocoapods, all the pods are already included in our repo. So no need to run `pod install`.\n\nPlease note the [limitations of using OpenStreetMap Tile Servers](http://wiki.openstreetmap.org/wiki/Tile_usage_policy)\n\n### Add a custom tile server\nAdding a tile server is easy, just edit the file `GPXTileServer.swift`, uncomment the lines with `AnotherMap` and modify the templateUrl to point to the new tile server.\n\nYou have a list of tile servers in [OpenStreetMap Wiki](http://wiki.openstreetmap.org/wiki/Tile_servers)\n\n## Reference documentation\n\nThe application is being documented using [jazzy](https://github.com/realm/jazzy) and following [NSHipster tutorial on swift documentation](https://nshipster.com/swift-documentation/).\n\n![Documentation Status](https://www.merlos.org/iOS-Open-GPX-Tracker/docs/badge.svg)\n\n**[Read Source code documentation](https://www.merlos.org/iOS-Open-GPX-Tracker/docs/index.html)**\n\n## Contribute\n\nYou can contribute by forking and submitting a pull request (PR).\n\nSome conditions for a PR to be accepted:\n\n1) Text displayed in the application shall be internationalized.\n   - To do that use [NSLocalizedString](https://developer.apple.com/documentation/foundation/nslocalizedstring). Search on the code to see examples of usage.\n   - Add the keys of the localized string to all the `lproj` files. Keep this files organized in the same way (~ same line). \n   - Use [ChatGPT](https://chat.openai.com) or [DeepL](https://www.deepl.com/translator) to translate them to other languages. For example, for ChatGPT you can use a prompt similar to:\n        ```\n          You are a language translator that is in the process of translating an mobile application for getting GPX traces in an iOS device. \n          \n          Please provide the translation to the following languages:\n          German (de), Spanish (es), Chinese Simplified (zh-Hans), Ukranian (uk), Finnish (fi-FI), Russian (ru),French (fr), Dutch (nl), Portuguese Brazil (pt-BR), Italian (it) \n\n          of the following strings:\n\n          \"TEXT_KEY\" = \"This is the text\";\n          \"TEXT_KEY\" = \"This is the text\";\n          ```\n\n\n2) You need to install [swiftlint](https://github.com/realm/SwiftLint) and ensure you're not introducing additional lint warnings.\n\n3) You need to document the classes and methods that you create explaining what do they do from a blackbox perspective. We use [jazzy](https://github.com/realm/jazzy) for the documentation. To install jazzy run:\n    ```shell\n    gem install jazzy\n    ```\n    Then, to view the documentation run \n    ```shell\n    jazzy\n    ```\n    **Note that it will generate the documents in the `../gh-pages/docs`.**\n\n**PR License** \nNote that though the source code is licensed under GPL 3.0 by submitting a pull request you are also providing me (Juan M. Merlos) the rights to distribute those changes on the binary app published on the App Store (which is released under Apple's Standard License Agreement)\n\n## GPL License\nOpen GPX Tracker app for iOS. Copyright (C) 2014-2023  Juan M. Merlos (@merlos) \u0026 Contributors\n\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the **GNU General Public License** as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program.  If not, see \u003chttp://www.gnu.org/licenses/\u003e.\n\n----\n\nPlease note that this source code was released under the GPL license.  So any change on the code shall be made publicly available and distributed under the GPL license (this does not apply to the pods included in the project which have their own license).\n\n----\n\nThis app uses:\n- [CoreGPX Framework](https://github.com/vincentneo/CoreGPX), a SWIFT library for using GPX files. Created by [@vincentneo](http://github.com/vincentneo)\n\nEntry on the [OpenStreetMap Wiki](https://wiki.openstreetmap.org/wiki/OpenGpxTracker)\n\nSee also:\n- [Avenue GPX Viewer](https://github.com/vincentneo/Avenue-GPX-Viewer), a GPX viewer based on some of the codes used in this project. A side project by collaborator [@vincentneo](http://github.com/vincentneo).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmerlos%2FiOS-Open-GPX-Tracker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmerlos%2FiOS-Open-GPX-Tracker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmerlos%2FiOS-Open-GPX-Tracker/lists"}