This walks you through systematically shrinking a Grafana app plugin's module.js from multi-megabyte bloat down to under 200 KB using React.lazy, Suspense, and webpack code splitting. The breakdown is unusually pragmatic: it gives you a risk matrix showing exactly what to split (routes, extensions) and what to leave alone (vendor libs, shared utils), plus a CI action that posts bundle diffs on every PR so you can see the impact immediately. The step-by-step goes from measurement to analysis to implementation in priority order, with real shell commands to measure production bundle size and grep for heavy imports. If your Grafana plugin is slow to load or you're staring at a 2 MB module.js, this is the playbook.
npx skills add https://github.com/grafana/skills --skill plugin-bundle-size