# Creating A Plugin

If one of the [independently maintained plugins](https://docs.fleaflet.dev/v7/plugins/list) doesn't suit your needs, then you can create your own, to achieve maximum customizability.

Most plugins create either new [tile-providers](https://docs.fleaflet.dev/v7/layers/tile-layer/tile-providers "mention"), or new [layers](https://docs.fleaflet.dev/v7/usage/layers "mention"). Some plugins just provide additional useful tools.

{% content-ref url="making-a-plugin/creating-new-tile-providers" %}
[creating-new-tile-providers](https://docs.fleaflet.dev/v7/plugins/making-a-plugin/creating-new-tile-providers)
{% endcontent-ref %}

{% content-ref url="making-a-plugin/creating-new-layers" %}
[creating-new-layers](https://docs.fleaflet.dev/v7/plugins/making-a-plugin/creating-new-layers)
{% endcontent-ref %}

## Submitting A New Plugin

If you've made your own plugin that you're willing to share, please let us know in the #plugins channel on the flutter\_map Discord server. We can then add it to the [list](https://docs.fleaflet.dev/v7/plugins/list "mention"). We're always looking forward to see what you've made!

When submitting a plugin, please ensure the plugin:

* *preferably* includes 'flutter\_map\_' in the name, by convention
* is *preferably* available via a standard pub.dev package installation
* includes good documentation (at least to setup basic functionality), and a code example
