Files
Robert Horvath 0fcc864bbb Docs: Add Schema maturity docs (#61963)
* Docs: Add Schema maturity docs

* Remove 'which category' section from maturity.md

Co-authored-by: sam boyer <sdboyer@grafana.com>

* Remove Maturity process guides from maturity.md

Co-authored-by: sam boyer <sdboyer@grafana.com>

* Remove Defaults and Field optionality from maturity.md

Co-authored-by: sam boyer <sdboyer@grafana.com>

* Remove MaybeRemove section from maturity.md

Co-authored-by: sam boyer <sdboyer@grafana.com>

* Remove Milestone 3 and 4 from maturity.md

Co-authored-by: sam boyer <sdboyer@grafana.com>

* Rearrange schema maturity docs

* Regenerate schema docs after merge with main

* Update Maturity docs headers, keep single h1

* Update wording in Schema docs

Co-authored-by: Tania <yalyna.ts@gmail.com>

* Regenerate docs after merge with main

---------

Co-authored-by: sam boyer <sdboyer@grafana.com>
Co-authored-by: Tania <yalyna.ts@gmail.com>
2023-02-07 11:02:05 +01:00

32 lines
1.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: Grafana schema
weight: 200
_build:
list: false
---
# Grafana schema
> Grafanas schemas, kind system and related code generation are in active development.
Grafana is moving to a schema-centric model of development, where schemas are the single source of truth that specify
the shape of objects - for example, dashboards, datasources, users - in the frontend, backend, and plugin code.
Eventually, all of Grafanas object types will be schematized within the “Kind System.” Kinds, their schemas, the Kind
system rules, and associated code generators will collectively provide a clear, consistent foundation for Grafanas
APIs, documentation, persistent storage, clients, as-code tooling, and so forth.
Its exciting to imagine the possibilities that a crisp, consistent development workflow will enable - this is why
companies build [developer platforms](https://internaldeveloperplatform.org/)! At the same time, its also
overwhelming - any schema system that can meet Grafanas complex requirements will necessarily have a lot of moving
parts. Additionally, we must account for having Grafana continue to work as we make the transition - a prerequisite
for every large-scale refactoring.
In the Grafana ecosystem, there are three basic Kind categories and associated schema categories:
- [Core Kinds]({{< relref "core/" >}})
- Custom Kinds
- [Composable Kinds]({{< relref "composable/" >}})
The schema authoring workflow for each varies, as does the path to maturity.
[Grafana Kinds - From Zero to Maturity]({{< relref "maturity/" >}}) contains general reference material applicable to
all Kind-writing, and links to the guides for each category of Kind.