2021-09-29 07:34:40 -05:00
# Plugin development
2017-10-12 03:53:42 -05:00
2019-01-28 09:58:32 -06:00
This document is not meant as a complete guide for developing plugins but more as a changelog for changes in
Grafana that can impact plugin development. Whenever you as a plugin author encounter an issue with your plugin after
2021-09-29 07:34:40 -05:00
upgrading Grafana please check here before creating an issue.
2017-10-12 03:53:42 -05:00
2019-09-26 05:40:47 -05:00
## Plugin development resources
2017-10-12 03:53:42 -05:00
2021-10-25 03:11:44 -05:00
- [Grafana plugin developer guide ](https://grafana.com/docs/grafana/latest/developers/plugins/ )
2018-04-02 23:21:36 -05:00
- [Webpack Grafana plugin template project ](https://github.com/CorpGlory/grafana-plugin-template-webpack )
2019-09-26 05:40:47 -05:00
- [Simple JSON datasource plugin ](https://github.com/grafana/simple-json-datasource )
2017-10-12 03:53:42 -05:00
2019-09-26 05:40:47 -05:00
## Changes in Grafana v4.6
2017-10-12 03:53:42 -05:00
This version of Grafana has big changes that will impact a limited set of plugins. We moved from systemjs to webpack
2021-09-29 07:34:40 -05:00
for built-in plugins and everything internal. External plugins still use systemjs but now with a limited
set of Grafana components they can import. Plugins can depend on libs like lodash & moment and internal components
like before using the same import paths. However since everything in Grafana is no longer accessible, a few plugins could encounter issues when importing a Grafana dependency.
2017-10-12 03:53:42 -05:00
2021-05-06 09:29:29 -05:00
[List of exposed components plugins can import/require ](https://github.com/grafana/grafana/blob/main/public/app/features/plugins/plugin_loader.ts#L48 )
2017-10-12 03:53:42 -05:00
2021-09-29 07:34:40 -05:00
If you think we missed exposing a crucial lib or Grafana component let us know by opening an issue.
2017-10-12 03:53:42 -05:00
2021-09-29 07:34:40 -05:00
### Deprecated components
2017-10-12 03:53:42 -05:00
2017-10-16 18:10:40 -05:00
The angular directive `<spectrum-picker>` is now deprecated (will still work for a version more) but we recommend plugin authors
2019-09-26 05:40:47 -05:00
upgrade to new `<color-picker color="ctrl.color" onChange="ctrl.onSparklineColorChange"></color-picker>`
2017-10-12 03:53:42 -05:00
2019-09-26 05:40:47 -05:00
## Changes in Grafana v6.0
2019-03-20 14:24:54 -05:00
### DashboardSrv.ts
2019-09-26 05:40:47 -05:00
If you utilize [DashboardSrv ](https://github.com/grafana/grafana/commit/8574dca081002f36e482b572517d8f05fd44453f#diff-1ab99561f9f6a10e1fafcddc39bc1d65 ) in your plugin code, `dash` was renamed to `dashboard` .