Awesome Open Source
Awesome Open Source

CI Status Version License Platform Swift Package Manager Carthage


ClusterKit is an elegant and efficiant clustering controller for maps. Its flexible architecture make it very customizable, you can use your own algorithm and even your own map provider.

Features

  • Native supports of MapKit, GoogleMaps, Mapbox and YandexMapKit.
  • Comes with 2 clustering algorithms, a Grid Based Algorithm and a Non Hierarchical Distance Based Algorithm.
  • Annotations are stored in a QuadTree for efficient region queries.
  • Cluster center can be switched to Centroid, Nearest Centroid, Bottom.
  • Handles pin selection as well as drag and dropping.
  • Written in Objective-C with full Swift interop support.
MapKit GoogleMaps Mapbox
MapKit GoogleMaps Mapbox

Installation & Usage

Please follow the wiki for integration.

If you want to try it, simply run:

pod try ClusterKit

Or clone the repo and run pod install from the Examples directory first.

Provide the Google API Key in the AppDelegate in order to try it with GoogleMaps.

Provide the Mapbox Access Token in the AppDelegate in order to try it with Mapbox.

Provide the Yandex API Key in the AppDelegate in order to try it with YandexMapKit.

Credits

Assets by Hugo des Gayets.

Thanks @petropavel13 for the YandexMapKit integration.

License

ClusterKit is available under the MIT license. See the LICENSE file for more info.


Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Objective C (110,741
Ios (19,243
Cluster (1,238
Google Maps (1,182
Mapkit (164
Related Projects