Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Documentation reference maplibre #14

Merged
merged 42 commits into from
May 13, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
be25857
updating logo
tempranova Feb 7, 2023
9858eed
simple text changes README
tempranova Feb 7, 2023
9c1b1c4
simple text changes plugin READMEs
tempranova Feb 7, 2023
e9df5dd
remove old mapbox logo
tempranova Feb 7, 2023
c5fa2d7
link updates README
tempranova Feb 9, 2023
39d5369
removing authentication from example and access token language README
tempranova Feb 9, 2023
ba16e84
updating resources and links in plugins
tempranova Feb 9, 2023
e467dc0
couple cleanup links in README
tempranova Feb 9, 2023
0c97ad8
changing references and removing links to other projects in Contributing
tempranova Feb 9, 2023
1f76cf5
remove references to demo app contributing
tempranova Feb 9, 2023
15c3e11
notes about plugins being unmaintained
tempranova Feb 9, 2023
5797d52
changing link to API doc
tempranova Feb 10, 2023
7a316a7
commenting out branded gifs
tempranova Feb 10, 2023
99b6f80
cleaning up a few missed references
tempranova Feb 10, 2023
5c2084f
updating license
tempranova Feb 10, 2023
628bd8f
adding call to maintainers
tempranova Feb 10, 2023
c95c2a9
reverting license
tempranova Feb 15, 2023
ba4a396
adding maplibre copyright line
tempranova Feb 15, 2023
984e193
contributing verbiage
tempranova Feb 15, 2023
f136a38
contribution maintainer verbiage
tempranova Feb 15, 2023
e26eec1
readme resource name
tempranova Feb 19, 2023
c737dc7
ktx-mapbox-maps renamed
tempranova Feb 19, 2023
75fe655
ktx-maplibre-maps folders and refs
tempranova Feb 19, 2023
1f30662
ktx-maplibre-maps reverting refs to only package names
tempranova Feb 19, 2023
c4e35af
plugin annotation renames
tempranova Feb 19, 2023
b01ecf9
building refs updated
tempranova Feb 19, 2023
ac7c273
localization refs updated
tempranova Feb 19, 2023
90a98c0
markerview refs updated
tempranova Feb 19, 2023
35e23a9
offline refs updated
tempranova Feb 19, 2023
fbcc7ce
testapp ref updates
tempranova Feb 19, 2023
1da78a1
replacing some autogen files
tempranova Feb 19, 2023
35c7068
folder refs updated
tempranova Feb 19, 2023
b07e4db
changing permissions import to maplibre
tempranova Feb 21, 2023
90cdb68
Update ci badge
louwers Feb 22, 2023
4152dfe
Remove comment about Transifex
louwers Feb 22, 2023
1ef77a0
Update README.md
louwers Feb 22, 2023
206b180
remove maven block
tempranova Feb 24, 2023
08c25eb
Merge branch 'documentation-reference-maplibre' of https://github.com…
tempranova Feb 24, 2023
e74a14a
Fix performance when adding many individual annotations to map (#12)
fynngodau Feb 23, 2023
aaf937e
fix merge conflict
louwers Feb 27, 2023
f42f0b5
Reverted commits that modified files other than png or md
louwers May 13, 2024
98ac2ee
Merge branch 'main' into documentation-reference-maplibre
louwers May 13, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file removed .github/mbx-plugins-logo.png
Binary file not shown.
Binary file added .github/mlb-plugins-logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
9 changes: 5 additions & 4 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,17 @@
# Contributing

We welcome contributions to this plugin repository. If you're interested in building and sharing your own, please follow these steps:
We welcome contributions to this plugin repository. Please be aware that all plugins, except Annotations, are not actively maintained. If you are interested in becoming a maintainer for a plugin feel free to submit a pull request with a short introduction and your name and GitHub handle in the respective README.

If you're interested in building and sharing your own plugin, please follow these steps:

- [Open a ticket](https://github.com/maplibre/maplibre-plugins-android/issues/new) to kick off a conversation. It's a good idea to explain your plans before you push any code to make sure noone else is working on something similar and to discuss the best approaches to tackle your particular idea.

- Create a new branch that will contain the code for your plugin.

- Create a new Android library module inside the `plugins` project with Android Studio. Each plugin is a separate library that depends on the Mapbox Android SDK, and potentially on other third-party libraries. Besides the code for the plugin, make sure you include:
- Create a new Android library module inside the `plugins` project with Android Studio. Each plugin is a separate library that depends on the MapLibre Android SDK, and potentially on other third-party libraries. Besides the code for the plugin, make sure you include:

- Tests.
- Javadoc that documents the plugin usage and purpose in detail.

- Create a new activity inside the demo app that showcases how to use your plugin. As important as having a working plugin is to show how to use it so that anyone can include it in their projects easily.

- Finally, once you're ready to share your code, list your plugin in this file and then open a PR for the `@mapbox/android` team to review.
- Finally, once you're ready to share your code, list your plugin in this file and then open a PR for other contributors to review.
44 changes: 17 additions & 27 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,28 +1,28 @@
<h1 align="center">
<br>
<a href="https://www.mapbox.com/android-docs/plugins/overview/"><img src="https://github.com/mapbox/mapbox-plugins-android/blob/master/.github/mbx-plugins-logo.png" alt="Mapbox Plugins" width="500"></a>
<img src="https://github.com/maplibre/maplibre-plugins-android/blob/master/.github/mlb-plugins-logo.png" alt="MapLibre Plugins" width="500">
</h1>

<h4 align="center">Plugins are single-purpose libraries built on top of the <a href="https://www.mapbox.com/android-docs/">Mapbox Maps SDK for Android</a> that you can include in your apps like any other Android dependency</h4>
<h4 align="center">Plugins are single-purpose libraries built on top of the <a href="https://maplibre.org/maplibre-gl-native/android/api/">MapLibre Maps SDK for Android</a> that you can include in your apps like any other Android dependency</h4>

<p align="center">
<a href="https://circleci.com/gh/mapbox/mapbox-plugins-android">
<img src="https://circleci.com/gh/mapbox/mapbox-plugins-android.svg?style=shield&circle-token=:circle-token">
</a>
[![ci](https://github.com/maplibre/maplibre-plugins-android/actions/workflows/ci.yml/badge.svg)](https://github.com/maplibre/maplibre-plugins-android/actions/workflows/ci.yml)
</p>
<br>

# MapLibre Plugins for Android

Plugins are single-purpose libraries built on top of the [Mapbox Maps SDK for Android](https://www.mapbox.com/android-docs/) that you can include in your apps like any other Android dependency. You'll find [documentation for each plugin on our Android documentation website](https://www.mapbox.com/android-docs/plugins/overview/). A full list of the current plugins is available below.
Plugins are single-purpose libraries built on top of the [MapLibre GL Native for Android](https://maplibre.org/maplibre-gl-native/android/api/) that you can include in your apps like any other Android dependency. A full list of the current plugins is available below.

We are looking for maintainers for these plugins! Please reach out to the Maplibre team and take a look at [the contribution guide](https://github.com/maplibre/maplibre-plugins-android/blob/master/CONTRIBUTING.md).

## Available Plugins

* [**Annotation:** Simplify the way to set and adjust the visual properties of annotations on a map.](https://github.com/maplibre/maplibre-plugins-android/tree/master/plugin-annotation)

* [**MarkerView:** Add map markers that are Android views.](https://github.com/maplibre/maplibre-plugins-android/tree/master/plugin-markerview)
* [**Traffic:** Adds a real-time traffic layer to any Mapbox base map.](https://github.com/maplibre/maplibre-plugins-android/tree/master/plugin-traffic)

* [**Traffic:** Adds a real-time traffic layer to any MapLibre base map.](https://github.com/maplibre/maplibre-plugins-android/tree/master/plugin-traffic)

* [**Location layer:** [Deprecated] Add a location marker on your map indicating the user's location.](https://github.com/maplibre/maplibre-plugins-android/tree/master/plugin-locationlayer)

Expand All @@ -38,7 +38,7 @@ Plugins are single-purpose libraries built on top of the [Mapbox Maps SDK for An

## Installing a plugin

By using a plugin, you also have to include the Mapbox Maps SDK for Android which means that you'll need to setup your project to use the Maps SDK if you haven't already. Head over to the [overview page for the Maps SDK](https://www.mapbox.com/android-docs/map-sdk/overview/) to learn more.
By using a plugin, you also have to include the MapLibre GL Native for Android which means that you'll need to setup your project to use the Maps SDK if you haven't already. Head over to the [overview page for the Maps SDK](https://maplibre.org/projects/maplibre-native/) to learn more.

Note that depending on the plugin you add, there might be required permissions and additional setup steps. You'll find more information on whether or not more configuration steps are involved when looking at the specific plugin documentation.

Expand All @@ -49,50 +49,40 @@ Note that depending on the plugin you add, there might be required permissions a
```gradle
repositories {
mavenCentral()
maven {
url 'https://api.mapbox.com/downloads/v2/releases/maven'
authentication {
basic(BasicAuthentication)
}
credentials {
username "mapbox"
password = "SDK_REGISTRY_TOKEN"
}
}
}

dependencies {
implementation 'com.mapbox.mapboxsdk:{PLUGIN_NAME}-v{MAJOR_MAPS_SDK_VERSION_NUMBER}:PLUGIN_VERSION_NUMBER'
implementation 'org.maplibre.android:{PLUGIN_NAME}-v{MAJOR_MAPS_SDK_VERSION_NUMBER}:PLUGIN_VERSION_NUMBER'

This comment was marked as resolved.

}
```
5. Replace SDK_REGISTRY_TOKEN with a Mapbox access token that has the downloads scope

Plugin artifacts are versioned based on the major release of the Maps SDK for Android, which means, that each artifact's name has a major version of the Maps SDK it's compatible with appended.

5. Click the Sync Project with Gradle Files near the toolbar in Studio.

## Maps SDK compatibility

The Mapbox Plugins for Android are heavily dependent on the major semantic versioning number of the Maps SDK. They either won't compile or hide runtime bugs when paired with a different major version of the Maps SDK. Each plugin's dependency name has a `vX` suffix which states the major version of the Maps SDK that the plugin is compatible with. This suffix makes the transition between versions easier and more educated without the need to jump into changelogs and compare repositories.
The MapLibre Plugins for Android are heavily dependent on the major semantic versioning number of the Maps SDK. They either won't compile or hide runtime bugs when paired with a different major version of the Maps SDK. Each plugin's dependency name has a `vX` suffix which states the major version of the Maps SDK that the plugin is compatible with. This suffix makes the transition between versions easier and more educated without the need to jump into changelogs and compare repositories.

## Help and Usage

A plugin is simply a library module built on top of the Mapbox Maps SDK for Android. Plugins can be easy to use. Currently, we are not requiring plugins to register themselves or to implement any specific interfaces so that they're simple to consume.
A plugin is simply a library module built on top of the MapLibre Maps SDK for Android. Plugins can be easy to use. Currently, we are not requiring plugins to register themselves or to implement any specific interfaces so that they're simple to consume.

### Test app

This repository includes an app with examples showing how you can use each plugin.

- To access ready-to-use snippets, [see its code here](https://github.com/mapbox/mapbox-plugins-android/tree/master/app/src/main/java/com/mapbox/mapboxsdk/plugins/testapp).
- To run the application locally, you need to provide your own [maptiler API key](https://cloud.maptiler.com/account/keys/) at compile time. Therefore, add the property `maptilerApiKey="…"` to your `local.properties` file in the repository's root.

This might change in the future as we build more plugins and learn how you use them. We'd love to [hear your feedback](https://github.com/mapbox/mapbox-plugins-android/issues).
This might change in the future as we build more plugins and learn how you use them. We'd love to [hear your feedback](https://github.com/maplibre/maplibre-plugins-android/issues).

## Why Plugins?

Splitting specific functionality into plugins makes our Maps SDK lighter and nimble for you to use, and it also lets us iterate faster. We can release plugins more often than the SDK, which requires a slower pace due to its larger codebase.

The Mapbox Android team creates plugins but this plugins repository is an open-source project similar to the various Mapbox SDKs for Android.
Plugins' lightweight nature makes them much easier for you and anyone else to contribute rather than trying to add the same feature to the more robust Maps SDK. The Mapbox team can also more easily accept contributed plugins and keep the plugin list growing.
The MapLibre Android team creates plugins but this plugins repository is an open-source project similar to the various MapLibre SDKs for Android.
Plugins' lightweight nature makes them much easier for you and anyone else to contribute rather than trying to add the same feature to the more robust Maps SDK. The MapLibre team can also more easily accept contributed plugins and keep the plugin list growing.

## Contributing

Expand Down
22 changes: 11 additions & 11 deletions plugin-annotation/README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# Mapbox annotation plugin
# MapLibre annotation plugin

![annotations-plugin](https://user-images.githubusercontent.com/2151639/44861322-945d5e00-ac78-11e8-8ccb-883a4a743bcf.gif)
<!-- ![annotations-plugin](https://user-images.githubusercontent.com/2151639/44861322-945d5e00-ac78-11e8-8ccb-883a4a743bcf.gif) -->

## Getting Started

[More documentation about the plugin can be found here](https://www.mapbox.com/android-docs/plugins/overview/annotation/)
<!-- [More documentation about the plugin can be found here](https://www.mapbox.com/android-docs/plugins/overview/annotation/) -->

To use the annotation plugin you include it in your `build.gradle` file.

Expand All @@ -31,7 +31,7 @@ android {
}

dependencies {
implementation 'com.mapbox.mapboxsdk:mapbox-android-plugin-annotation-v9:0.9.0'
implementation 'com.maplibre.maplibresdk:maplibre-android-plugin-annotation-v9:0.9.0'
}
```

Expand All @@ -48,29 +48,29 @@ repositories {

// In the app build.gradle file
dependencies {
implementation 'com.mapbox.mapboxsdk:mapbox-android-plugin-annotation-v9:0.10.0-SNAPSHOT'
implementation 'com.maplibre.maplibresdk:maplibre-android-plugin-annotation-v9:0.10.0-SNAPSHOT'
}
```

## Annotation plugin examples

- [In this repo's test app](https://github.com/mapbox/mapbox-plugins-android/tree/master/app/src/main/java/com/mapbox/mapboxsdk/plugins/testapp/activity/annotation)
- [In this repo's test app](https://github.com/maplibre/maplibre-plugins-android/tree/master/app/src/main/java/com/mapbox/mapboxsdk/plugins/testapp/activity/annotation)

## Help and Usage

This repository includes an app that shows how to use each plugin in this repository. [Check out its code](https://github.com/mapbox/mapbox-plugins-android/tree/master/app/src/main/java/com/mapbox/mapboxsdk/plugins/testapp/activity) for ready-to-use snippets.
This repository includes an app that shows how to use each plugin in this repository. [Check out its code](https://github.com/maplibre/maplibre-plugins-android/tree/master/app/src/main/java/com/mapbox/mapboxsdk/plugins/testapp/activity) for ready-to-use snippets.

We'd love to [hear your feedback](https://github.com/mapbox/mapbox-plugins-android/issues) as we build more plugins and learn how you use them.
We'd love to [hear your feedback](https://github.com/maplibre/maplibre-plugins-android/issues) as we build more plugins and learn how you use them.

## Why Plugins

Splitting specific functionality into plugins makes our Map SDK lighter and nimble for you to use, and it also lets us iterate faster. We can release plugins more often than the SDK, which requires a slower pace due to its larger codebase.

The Mapbox Android team creates plugins but this plugins repository is an open-source project similar to the various Mapbox SDKs for Android.
Plugins' lightweight nature makes them much easier for you and anyone else to contribute rather than trying to add the same feature to the more robust Map SDK. The Mapbox team can also more easily accept contributed plugins and keep the plugin list growing.
The MapLibre Android team creates plugins but this plugins repository is an open-source project similar to the various MapLibre SDKs for Android.
Plugins' lightweight nature makes them much easier for you and anyone else to contribute rather than trying to add the same feature to the more robust Map SDK. The MapLibre team can also more easily accept contributed plugins and keep the plugin list growing.

## Contributing

We welcome contributions to this plugin repository!

If you're interested in building and sharing your own plugin, please read [the contribution guide](https://github.com/mapbox/mapbox-plugins-android/blob/master/CONTRIBUTING.md) to learn how to get started.
If you're interested in building and sharing your own plugin, please read [the contribution guide](https://github.com/maplibre/maplibre-plugins-android/blob/master/CONTRIBUTING.md) to learn how to get started.
26 changes: 13 additions & 13 deletions plugin-building/README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
# Mapbox Building Plugin
# MapLibre Building Plugin

![buildings-plugin](https://user-images.githubusercontent.com/4394910/28844435-71442d04-76b9-11e7-8866-ee6a94306353.gif)
<!-- ![buildings-plugin](https://user-images.githubusercontent.com/4394910/28844435-71442d04-76b9-11e7-8866-ee6a94306353.gif) -->

This plugin is currently unmaintained.

## Getting Started

[More documentation about the plugin can be found here](https://www.mapbox.com/android-docs/plugins/overview/building/)
<!-- [More documentation about the plugin can be found here](https://www.mapbox.com/android-docs/plugins/overview/building/) -->

To use the building plugin you include it in your `build.gradle` file.

Expand All @@ -18,7 +20,7 @@ repositories {

// In the app build.gradle file
dependencies {
implementation 'com.mapbox.mapboxsdk:mapbox-android-plugin-building-v9:0.7.0'
implementation 'com.maplibre.maplibresdk:maplibre-android-plugin-building-v9:0.7.0'
}
```

Expand All @@ -35,31 +37,29 @@ repositories {

// In the app build.gradle file
dependencies {
implementation 'com.mapbox.mapboxsdk:mapbox-android-plugin-building-v9:0.8.0-SNAPSHOT'
implementation 'com.maplibre.maplibresdk:maplibre-android-plugin-building-v9:0.8.0-SNAPSHOT'
}
```

## Building plugin examples

- [In this repo's test app](https://github.com/mapbox/mapbox-plugins-android/blob/master/app/src/main/java/com/mapbox/mapboxsdk/plugins/testapp/activity/building/BuildingActivity.kt)

- [In the Mapbox Android demo app](https://github.com/mapbox/mapbox-android-demo/blob/a411fa95cd71c1b90a30895060b319310444aebb/MapboxAndroidDemo/src/main/java/com/mapbox/mapboxandroiddemo/examples/plugins/BuildingPluginActivity.java) – (Don't have the app? [Download it on Google Play](https://play.google.com/store/apps/details?id=com.mapbox.mapboxandroiddemo).)
- [In this repo's test app](https://github.com/maplibre/maplibre-plugins-android/blob/master/app/src/main/java/com/mapbox/mapboxsdk/plugins/testapp/activity/building/BuildingActivity.kt)

## Help and Usage

This repository includes an app that shows how to use each plugins in this repository. [Check out its code](https://github.com/mapbox/mapbox-plugins-android/tree/master/app/src/main/java/com/mapbox/mapboxsdk/plugins/testapp/activity) for ready-to-use snippets.
This repository includes an app that shows how to use each plugins in this repository. [Check out its code](https://github.com/maplibre/maplibre-plugins-android/tree/master/app/src/main/java/com/mapbox/mapboxsdk/plugins/testapp/activity) for ready-to-use snippets.

We'd love to [hear your feedback](https://github.com/mapbox/mapbox-plugins-android/issues) as we build more plugins and learn how you use them.
We'd love to [hear your feedback](https://github.com/maplibre/maplibre-plugins-android/issues) as we build more plugins and learn how you use them.

## Why Plugins

Splitting specific functionality into plugins makes our Map SDK lighter and nimble for you to use, and it also lets us iterate faster. We can release plugins more often than the SDK, which requires a slower pace due to its larger codebase.

The Mapbox Android team creates plugins but this plugins repository is an open-source project similar to the various Mapbox SDKs for Android.
Plugins' lightweight nature makes them much easier for you and anyone else to contribute rather than trying to add the same feature to the more robust Map SDK. The Mapbox team can also more easily accept contributed plugins and keep the plugin list growing.
The MapLibre Android team creates plugins but this plugins repository is an open-source project similar to the various MapLibre SDKs for Android.
Plugins' lightweight nature makes them much easier for you and anyone else to contribute rather than trying to add the same feature to the more robust Map SDK. The MapLibre team can also more easily accept contributed plugins and keep the plugin list growing.

## Contributing

We welcome contributions to this plugin repository!

If you're interested in building and sharing your own plugin, please read [the contribution guide](https://github.com/mapbox/mapbox-plugins-android/blob/master/CONTRIBUTING.md) to learn how to get started.
If you're interested in building and sharing your own plugin, please read [the contribution guide](https://github.com/maplibre/maplibre-plugins-android/blob/master/CONTRIBUTING.md) to learn how to get started.
Loading
Loading