Skip to content

Commit 6f35ae6

Browse files
authored
Merge branch 'main' into mckn/agents-md-datasource-plugin
2 parents bd7c3ec + d919f17 commit 6f35ae6

File tree

16 files changed

+278
-118
lines changed

16 files changed

+278
-118
lines changed

CHANGELOG.md

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,42 @@
1+
# (Thu Nov 27 2025)
2+
3+
#### 🐛 Bug Fix
4+
5+
- `@grafana/[email protected]`
6+
- Create Plugin: update valibot to ^1.2.0 [#2331](https://github.com/grafana/plugin-tools/pull/2331) ([@jackw](https://github.com/jackw))
7+
8+
#### Authors: 1
9+
10+
- Jack Westbrook ([@jackw](https://github.com/jackw))
11+
12+
---
13+
14+
# (Thu Nov 27 2025)
15+
16+
#### 🐛 Bug Fix
17+
18+
- `@grafana/[email protected]`
19+
- Plugin E2E: Bump e2e selectors [#2329](https://github.com/grafana/plugin-tools/pull/2329) ([@sunker](https://github.com/sunker))
20+
21+
#### Authors: 1
22+
23+
- Erik Sundell ([@sunker](https://github.com/sunker))
24+
25+
---
26+
27+
# (Wed Nov 26 2025)
28+
29+
#### 🐛 Bug Fix
30+
31+
- `@grafana/[email protected]`
32+
- Create Plugin: bump swc/core to ^1.14.0 to fix segfault on Linux ARM [#2328](https://github.com/grafana/plugin-tools/pull/2328) ([@xnyo](https://github.com/xnyo))
33+
34+
#### Authors: 1
35+
36+
- Giuseppe Guerra ([@xnyo](https://github.com/xnyo))
37+
38+
---
39+
140
# (Tue Nov 25 2025)
241

342
#### 🚀 Enhancement

docusaurus/docs/get-started.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -229,6 +229,7 @@ Congratulations! You've just scaffolded your first plugin which you can now acce
229229
## Next steps
230230

231231
- Start your plugin journey with one of our [plugin development tutorials](/tutorials/).
232-
- Learn how to [extend](/how-to-guides) its functionality.
232+
- Learn how to [extend](/how-to-guides) the plugin's functionality.
233233
- Review the [plugin examples](https://github.com/grafana/grafana-plugin-examples) to learn about good practices.
234234
- Learn how to [package](/publish-a-plugin/package-a-plugin), [sign](/publish-a-plugin/sign-a-plugin), and [publish](/publish-a-plugin/publish-or-update-a-plugin.md) your plugin to the Grafana [plugin catalog](https://grafana.com/plugins).
235+
- Use the [available resources](resources), including [Grafana Community](https://community.grafana.com/), the official Grafana Labs forums, and the [Community Slack](https://slack.grafana.com/).
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
---
2+
id: include-page-behind-feature-toggle
3+
title: Include a page behind a feature toggle
4+
description: How to include a page behind a feature toggle
5+
keywords:
6+
- grafana
7+
- plugins
8+
- plugin
9+
- app
10+
- navigation
11+
---
12+
13+
# Include a page behind a feature toggle
14+
15+
You can use feature flags to control the visibility of pages in app plugins. While pages are visible by default, you can flag them to hide them from navigation.
16+
17+
:::note
18+
19+
This feature is only available in Grafana 12.4 and later.
20+
21+
:::
22+
23+
## How it works
24+
25+
Grafana checks for feature flags when users access plugin pages. Pages are visible by default.
26+
27+
The flag key format is:
28+
29+
```ini
30+
[feature_toggles]
31+
plugin-page-visible.<path> = false
32+
```
33+
34+
If you set the visibility flag to `false`, the page will be hidden from the navigation. When a user tries to access it, Grafana returns a `403 Forbidden` response.
35+
36+
To add a experimental page:
37+
38+
1. Deploy the feature flag with the value set to false.
39+
1. Release or deploy the plugin with the new page.
40+
41+
## Example
42+
43+
To hide `/a/myorg-basic-app/my-page`:
44+
45+
1. Set the feature flag key to `plugin-page-visible./a/myorg-basic-app/my-page`.
46+
2. Set the value to `false`.
47+
48+
```ini
49+
[feature_toggles]
50+
plugin-page-visible./a/myorg-basic-app/my-page = false
51+
```
52+
53+
## Related resources
54+
55+
Refer to the [Grafana feature toggles guide](https://grafana.com/docs/grafana/latest/setup-grafana/configure-grafana/feature-toggles/) for Grafana-specific configuration

docusaurus/docs/how-to-guides/index.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,3 +19,9 @@ keywords:
1919
Learn how to extend Grafana plugins with additional functionality and capabilities with short guides.
2020

2121
<DocLinkList />
22+
23+
:::note
24+
25+
If you have any questions reach out to the [Grafana Community forum](https://community.grafana.com/) and the [Community Slack](https://slack.grafana.com/).
26+
27+
:::

docusaurus/docs/key-concepts/data-frames.md

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,14 @@ sidebar_position: 40
1313

1414
# Data frames
1515

16-
A data frame is a collection of fields organized as columns. Each field, in turn, consists of a collection of values and metadata, such as units, scaling, and so on.
16+
Grafana supports a variety of different data sources, each with its own data model. To make this possible, Grafana consolidates the query results from each of these data sources into one unified data structure called a _data frame_. A data frame is a collection of fields organized as columns. Each field, in turn, consists of a collection of values and metadata, such as units, scaling, and so on.
17+
18+
## Use data frames
1719

1820
You can use data frame fields to automate configurations. For example, you could configure Grafana to automatically set the unit provided by the data source.
1921

22+
Data frame fields also enable _data transformations_ within Grafana. A data transformation is any function that accepts a data frame as input, and returns another data frame as output. By using data frames in your plugin, you get a range of transformations for free. To learn more about data transformations in Grafana, refer to [Transform data](https://grafana.com/docs/grafana/latest/panels-visualizations/query-transform-data/transform-data).
23+
2024
## Data frame fields
2125

2226
For a data frame to be valid:
@@ -43,12 +47,6 @@ In the plugin frontend code you can use the function [`ensureTimeField`](https:/
4347

4448
This function converts strings following the ISO 8601 format (for example, `2017-07-19 00:00:00.000`), JavaScript's `Date` objects, and strings with relative times (for example, `now-10s`) to `Numbers`.
4549

46-
## Data transformations
47-
48-
Data frame fields enable _data transformations_ within Grafana. A data transformation is any function that accepts a data frame as input, and returns another data frame as output. By using data frames in your plugin, you get a range of transformations for free.
49-
50-
To learn more about data transformations in Grafana, refer to [Transform data](https://grafana.com/docs/grafana/latest/panels-visualizations/query-transform-data/transform-data).
51-
5250
## Available data frames
5351

5452
The following data frame types are available:

docusaurus/docs/resources.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,9 @@ sidebar_position: 70
1616

1717
# Resources
1818

19-
Here are some additional related to plugins that may make your plugin development journey easier.
19+
Here are some additional resources related to plugins that may make your plugin development journey easier.
2020

21-
- [Grafana developer portal](https://grafana.com/developers/) - Home to plugin documentation, Scenes API, React components library, Data Plane contract, and more.
22-
- [Grafana Design System](https://grafana.com/developers/saga/about/overview/) - Saga is our design system establishing the shared visual language for all Grafana Labs products.
21+
- [Grafana developer portal](https://grafana.com/developers/) - Home to plugin documentation, data structure documentation, React components library, and more.
2322
- [Grafana API reference](https://grafana.com/docs/grafana/latest/developers/http_api/) - The backend HTTP API for Grafana.
2423
- [Grafana Community](https://community.grafana.com/) - Official Grafana Labs forums on plugin development and other topics.
2524
- [Community Slack](https://slack.grafana.com/) - Discuss plugin development at the Grafana Labs community Slack.

docusaurus/docs/tutorials/index.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,3 +17,9 @@ keywords:
1717
Learn how to create a Grafana plugin from scratch by following our end-to-end tutorials for every type of Grafana plugin.
1818

1919
<DocLinkList />
20+
21+
:::note
22+
23+
If you have any questions reach out to the [Grafana Community forum](https://community.grafana.com/) and the [Community Slack](https://slack.grafana.com/).
24+
25+
:::

docusaurus/website/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "website",
3-
"version": "5.1.0",
3+
"version": "5.1.1",
44
"private": true,
55
"scripts": {
66
"docusaurus": "docusaurus",

docusaurus/website/sidebars.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,7 @@ const sidebars: SidebarsConfig = {
124124
'how-to-guides/app-plugins/use-llms-and-mcp',
125125
'how-to-guides/app-plugins/use-a-service-account',
126126
'how-to-guides/app-plugins/work-with-nested-plugins',
127+
'how-to-guides/app-plugins/include-page-behind-feature-toggle',
127128
],
128129
},
129130

0 commit comments

Comments
 (0)