Contribute to Grafana
This page lists resources for developers who want to contribute to the Grafana software ecosystem or build plugins for Grafana.
General resources
These resources are useful for all developers.
Contributing to Grafana: Start here to learn how you can contribute your skills to make Grafana even better.
Developer guide: A guide to help you get started developing Grafana software, includes instructions for how to configure Grafana for development.
Contributing to documentation: A guide to help you contribute to Grafana documentation, includes links to beginner-friendly issues.
Architecture guides: These guides explain Grafana’s background architecture.
Create a pull request: A guide for new contributors about how to create your first Grafana pull request.
REST APIs allow you to interact programmatically with the Grafana backend.
Best practices and style
Our style guides outline Grafana style for frontend, backend, documentation, and more, including best practices. Please read through them before you start editing or coding!
Backend style guide explains how we want to write Go code in the future.
Documentation style guide applies to all documentation created for Grafana products.
End to end test framework provides guidance for Grafana e2e tests.
Frontend style guide provides rules and guidance on developing in React for Grafana.
Redux framework explains how Grafana handles Redux boilerplate code.
Styling Grafana expands on styling React components with Emotion.
Theming Grafana explains how to use themes and ThemeContext in Grafana code.
Was this page helpful?
Related resources from Grafana Labs
![Getting started with the Grafana LGTM Stack](/static/assets/featured/getting-started-with-grafana-lgtm-stack-amer_featured.png?w=200 200w, /static/assets/featured/getting-started-with-grafana-lgtm-stack-amer_featured.png?w=400 400w)
![Getting started with Grafana dashboard design](/static/assets/featured/getting-started-with-grafana-dashboard-design_featured.png?w=200 200w, /static/assets/featured/getting-started-with-grafana-dashboard-design_featured.png?w=400 400w)
![Building advanced Grafana dashboards](/media/webinar/AMER_buildadv_notxt.png?w=200 200w, /media/webinar/AMER_buildadv_notxt.png?w=400 400w)