Files
Marcus Olsson eff194e1a0 Docs: Add plugin overview (#24332)
* Docs: Add plugin overview

* Add plugin dev overview

* Fix review comments

* Fix review comments
2020-05-07 17:45:50 +02:00

2.3 KiB

+++ title = "Build a plugin" type = "docs" [menu.docs] parent = "developers" identifier = "plugins" weight = 3 +++

Build a plugin

For more information on the types of plugins you can build, refer to the [Plugin Overview]({{< relref "../plugins/_index.md" >}}).

Get started

The easiest way to start developing Grafana plugins is to use the Grafana Toolkit.

Open the terminal, and run the following command in your [plugin directory]({{< relref "../installation/configuration/_index.md#plugins" >}}):

npx @grafana/toolkit plugin:create my-grafana-plugin

If you want a more guided introduction to plugin development, check out our tutorials:

  • [Build a panel plugin]({{< relref "../../../../tutorials/build-a-panel-plugin.md" >}})
  • [Build a data source plugin]({{< relref "../../../../tutorials/build-a-data-source-plugin.md" >}})

Go further

Learn more about specific areas of plugin development.

Concepts

Deepen your knowledge through a series of high-level overviews of plugin concepts.

  • [Data frames]({{< relref "../plugins/developing/dataframe.md" >}})
  • [Authentication for data source plugins]({{< relref "../plugins/developing/auth-for-datasources.md" >}})

UI library

Explore the many UI components in our Grafana UI library.

Tutorials

If you're looking to build your first plugin, check out these introductory tutorials:

  • [Build a panel plugin]({{< relref "../../../../tutorials/build-a-panel-plugin.md" >}})
  • [Build a data source plugin]({{< relref "../../../../tutorials/build-a-data-source-plugin.md" >}})

Ready to learn more? Check out our other tutorials:

  • [Build a panel plugin with D3.js]({{< relref "../../../../tutorials/build-a-panel-plugin-with-d3.md" >}})

API reference

Learn more about Grafana options and packages.

Metadata

  • [Plugin metadata]({{< relref "../plugins/developing/plugin.json.md" >}})

Typescript

  • [Grafana Data]({{< relref "../packages_api/data/_index.md" >}})
  • [Grafana Runtime]({{< relref "../packages_api/runtime/_index.md" >}})
  • [Grafana UI]({{< relref "../packages_api/ui/_index.md" >}})

Go