https://github.com/jordond/compass
🧠Kotlin Multiplatform library location toolkit for geocoding and geolocation
https://github.com/jordond/compass
compose compose-multiplatform geocoder geolocation kotlin kotlin-multiplatform location
Last synced: 13 days ago
JSON representation
🧠Kotlin Multiplatform library location toolkit for geocoding and geolocation
- Host: GitHub
- URL: https://github.com/jordond/compass
- Owner: jordond
- License: mit
- Created: 2024-03-15T23:18:08.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-04-08T12:45:46.000Z (14 days ago)
- Last Synced: 2025-04-09T21:57:04.942Z (13 days ago)
- Topics: compose, compose-multiplatform, geocoder, geolocation, kotlin, kotlin-multiplatform, location
- Language: Kotlin
- Homepage: https://compass.jordond.dev
- Size: 1.89 MB
- Stars: 250
- Watchers: 3
- Forks: 16
- Open Issues: 28
-
Metadata Files:
- Readme: README.MD
- License: LICENSE
- Support: docs/supported-platforms.md
- Roadmap: docs/roadmap.md
Awesome Lists containing this project
- mobile-awesome - compass - 🧠Kotlin Multiplatform library location toolkit for geocoding and geolocation. (Multiplatform / Android samples)
- kmp-awesome - Compass - 🧠Location toolkit for geocoding, geolocation, and autocomplete (Libraries / 📱 Device)
README
![]()
[](https://central.sonatype.com/namespace/dev.jordond.compass)
[](http://kotlinlang.org)
[](https://github.com/jordond/compass/actions/workflows/ci.yml)
[](https://opensource.org/license/mit/)[](https://github.com/JetBrains/compose-multiplatform)



Compass is a Kotlin Multiplatform library location toolkit. It provides a set of tools for working
with location data, including geocoding, reverse geocoding, and more. The
library is built with a focus on simplicity and ease of use, providing a straightforward API for
geocoding operations.Check out the [Documentation](https://compass.jordond.dev) for detailed instructions. You can also
view the generated KDoc at [docs.compass.jordond.dev](https://docs.compass.jordond.dev)## Table of Contents
- [Features](#features)
- [Setup](#setup)
- [Demo](#demo)
- [Contributing](#contributing)
- [License](#license)## Features
- **Geocoding**:
- Convert an address to a latitude and longitude (forward geocoding)
- Convert a latitude and longitude to an address (reverse geocoding)
- Support via native Android/iOS services
- Support via third party APIs for all platforms (planned)
- **Geolocation**:
- Built in permission handling
- Get the current location of the device
- Monitor the location of the device
- JS/WASM browser geolocation support
- **Autocomplete**:
- Provide suggestions for addresses based on user input
- Support via native Android/iOS services
- Support for all platforms via third party geocoder API's
- Support for Google Places API (planned)## Setup
Read the [Setup documentation](https://compass.jordond.dev/docs/setup/) for more information on setup and usage.
## Demo
A demo app is available in the `demo` directory. It is a Compose Multiplatform app that runs on
Android, and iOS.See [Documentation](https://compass.jordond.dev/docs/misc/demo) for more.
## Contributing
Contributions are always welcome!. If you'd like to contribute, please feel free to create a PR or
open an issue.See [Documentation](https://compass.jordond.dev/docs/misc/contributing) for more.
## License
See [LICENSE](LICENSE) for more information.