react-19-plugin-migration

Migrate Grafana plugins to React 19 compatibility with dependency and build updates.

1|Updated May 21, 2026
One-click install
npx skills add https://github.com/1k-off/umbraco-observability-playground --skill react-19-plugin-migration-1k-off
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: react-19-plugin-migration
Source: https://github.com/1k-off/umbraco-observability-playground/tree/main/.agents/skills/react-19-plugin-migration
Command: npx skills add https://github.com/1k-off/umbraco-observability-playground --skill react-19-plugin-migration-1k-off

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Grafana 13 switches from React 18 to React 19, and incompatible plugins can break at runtime; this skill helps you update the plugin to remain forward-compatible without upgrading React yourself.

Core Features & Use Cases

  • Detect React 19 compatibility issues using a build plus the @grafana/react-detect scanner, then prioritize fixes based on what it reports.
  • Apply Grafana plugin tooling updates by running the @grafana/create-plugin update to get the required bundler, mocks, and React 19 support changes.
  • Implement required React 19 compatibility changes including externalizing react/jsx-runtime, bumping grafanaDependency to at least 12.3.0, and addressing common source-level deprecations (e.g., ReactDOM.render, defaultProps, propTypes patterns).
  • Handle known migration failures with targeted workarounds for common issues such as ReactCurrentOwner/Dispatcher crashes from @grafana-cloud/*, i18n initialization errors for @grafana/scenes, and react/jsx-runtime runtime 404s.

Quick Start

Ask: "Prepare my Grafana plugin in the repository for React 19 compatibility by following the migration steps in the react-19-plugin-migration skill."

Frequently Asked Questions about react-19-plugin-migration

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I migrate my Grafana plugin to be compatible with React 19?▼

To migrate a Grafana plugin for React 19 compatibility, externalize the react/jsx-runtime, bump grafanaDependency to at least 12.3.0, and run @grafana/create-plugin updates for required bundler and scaffolding changes.

Why does my Grafana plugin break at runtime after upgrading to Grafana 13?▼

Grafana plugin runtime breakage occurs because Grafana 13 switches from React 18 to React 19, requiring source-level deprecations like ReactDOM.render and defaultProps to be fixed and react/jsx-runtime to be externalized.

How do I detect React 19 compatibility issues in my Grafana plugin?▼

Detect React 19 compatibility issues in your Grafana plugin by running a build alongside the @grafana/react-detect scanner, then prioritize fixes based on the reported deprecations and runtime errors.

How do I fix react/jsx-runtime 404 errors during Grafana plugin migration?▼

Fix react/jsx-runtime 404 runtime errors during Grafana plugin migration by applying webpack externals configurations to externalize react/jsx-runtime and updating your bundler via @grafana/create-plugin.

Do I need to upgrade React myself to prepare my Grafana plugin for Grafana 13?▼

You do not need to upgrade React yourself for Grafana 13 compatibility; instead, update your plugin tooling, externalize react/jsx-runtime, and bump grafanaDependency to 12.3.0 to remain forward-compatible.

How do I resolve ReactCurrentOwner crashes from @grafana-cloud packages after a React 19 migration?▼

Resolve ReactCurrentOwner and Dispatcher crashes from @grafana-cloud packages during a React 19 migration by applying targeted workarounds for known dependency failures and updating your plugin scaffolding.