https://github.com/aws-amplify/amplify-ios-maplibre
An adapter to leverage Amplify Geo with the map rendering of MapLibre.
https://github.com/aws-amplify/amplify-ios-maplibre
aws aws-amplify geolocation ios swift
Last synced: 10 months ago
JSON representation
An adapter to leverage Amplify Geo with the map rendering of MapLibre.
- Host: GitHub
- URL: https://github.com/aws-amplify/amplify-ios-maplibre
- Owner: aws-amplify
- License: apache-2.0
- Created: 2021-10-12T16:42:18.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2024-09-18T19:10:34.000Z (almost 2 years ago)
- Last Synced: 2025-08-27T04:46:43.427Z (11 months ago)
- Topics: aws, aws-amplify, geolocation, ios, swift
- Language: Swift
- Homepage:
- Size: 4.3 MB
- Stars: 4
- Watchers: 44
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
## AmplifyMapLibreAdapter for iOS
The AmplifyMapLibreAdapter is a library that combines the Amplify Geo category and the MapLibre SDK.
- Registers a custom URL protocol with MapLibre that intercepts and signs calls to AWS Location endpoints. This registration occurs automatically the first time AmplifyMapLibreAdapter is used to create a map.
- Brokers communication between Amplify and MapLibre by providing functions and extensions that simplify using Amplify Geo with MapLibre.
- Provide SwiftUI support for MapLibre that adds `AMLMapView` (Amplify MapLibre MapView) and `AMLMapCompositeView` Views around MapLibre's MLNMapView. This introduces SwiftUI support to the MapLibre SDK for iOS. It provides a subset of MLNMapView functionality that can be used for displaying and interacting with a map; providing APIs to track state changes, inject custom implementations for user interaction, and define settings.
## Usage
[Getting Started Guide](https://docs.amplify.aws/lib/geo/getting-started/q/platform/ios/)
[API Documentation](https://aws-amplify.github.io/amplify-ios-maplibre/docs/)
[Examples](Examples/AMLExamples/README.md)
## Platform Support
AmplifyMapLibreAdapter supports iOS 13 and above.
## Installation
### Swift Package Manager
Swift Pacakge Manager is distributed with Xcode. To add AmplifyMapLibreAdapter to your iOS project, take the following steps:
1. Open your project in Xcode.
2. Select your application in the **Project Navigator**.
3. Select your project in the **Project List** pane.
4. Select **Package Dependencies**.
5. Click the + (plus) button.
6. Enter the AmplifyMapLibreAdapter GitHub repo URL (`https://github.com/aws-amplify/amplify-ios-maplibre`) in the search bar labeled **Search or Enter Package URL**.
7. Click **Add Package** and select your desired **Dependency Rule**
8. Select the targets you would like to add.
- **AmplifyMapLibreAdapter** will allow you to create a `MLNMapView` configured to work with Amplify Geo.
- **AmplifyMapLibreUI** provides SwiftUI Map Views, `AMLMapView` and `AMLMapCompositeView`. Additionally, it also provides other map related UI components with applicable functionality, such as a `AMLSearchBar`, `AMLPlaceList`, `AMLMapControlView`, and more. All of which seamlessly integrate with Amplify Geo.
## Reporting Bugs/Feature Requests
We welcome you to use the GitHub issue tracker to report bugs or suggest features.
When filing an issue, please check [exisiting open](https://github.com/aws-amplify/amplify-ios-maplibre/issues), or [recently closed](https://github.com/aws-amplify/amplify-ios-maplibre/issues?utf8=%E2%9C%93&q=is%3Aissue%20is%3Aclosed%20), issues to make sure somebody else hasn't already reported the issue. Please try to include as much information as you can. Details like these are incredibly useful:
* Expected behavior and observed behavior.
* A reproducible test case or series of steps.
* The version of our code being used.
* Any modications you've made relecant to the bug.
* Anything custom about your environment or deployment.
* Stack Trace in text form (if applicable).
## Open Source Contributions
We welcome and and all contributions from the community! Make sure you read through our contribution guide [here](https://github.com/aws-amplify/amplify-ios-maplibre/blob/main/CONTRIBUTING.md) before submitting any PR's.
## Security
See [CONTRIBUTING](https://github.com/aws-amplify/amplify-ios-maplibre/blob/main/CONTRIBUTING.md#security-issue-notifications) for more information.
## License
This project is licensed under the Apache-2.0 License.