rune_devtools_extension 0.2.0 copy "rune_devtools_extension: ^0.2.0" to clipboard
rune_devtools_extension: ^0.2.0 copied to clipboard

Flutter DevTools extension for the rune package. Inspect live RuneView instances, their source, data context, and last error from the DevTools tab.

Changelog #

All notable changes to this package are documented here. Format follows Keep a Changelog; versioning follows Semantic Versioning.

0.2.0 - 2026-04-21 - DevTools Phase 3: source hot-edit #

Added #

  • Inline source editor per card. Each view card surfaces an Edit button next to the Source section. Tapping it replaces the read-only source with a multi-line TextField; Apply pushes the new source to the host via the new ext.rune.edit VM service extension, and the matching RuneView rebuilds with the override on the next frame. The original source is preserved on the payload as originalSource and can be restored with Reset (calls ext.rune.reset).
  • "overridden" chip on each card's header when an edit is active, so it is obvious at a glance which views are rendering non-widget source.
  • Original source section appears below the editor while an override is active, with a Reset button to revert to the widget's declared source.

Notes #

  • Requires rune ^1.19.0. The host-side inspector now exposes setSourceOverrideById and registers two additional VM service extensions: ext.rune.edit, ext.rune.reset.
  • Hot-edit is a debug-only feature. Release builds of the host never register the service extensions, so the tab's Edit / Reset buttons have no effect on release deployments.

0.1.0 - 2026-04-21 #

Added #

  • web/ Flutter-web source scaffold (index.html, manifest.json, favicon.png, maskable icons) so flutter build web can compile the DevTools UI against it. Tracked in git and published to pub.flutter-io.cn.
  • tool/build_bundle.sh convenience script that runs flutter pub get + flutter build web into extension/devtools/build/ and strips .symbols debug sidecars. Used by maintainers before dart pub publish and by path-dep consumers after cloning.
  • .pubignore at the package root. Takes precedence over .gitignore during publish and deliberately omits extension/devtools/build/. The compiled bundle stays out of git (it is ~30 MB of derived artefacts) but lands inside the pub.flutter-io.cn archive on each release so Flutter DevTools can render the tab without any consumer-side build step. The same file also excludes test/, tool/, and web/ from the published archive: unit tests, the bundle-rebuild script, and the Flutter-web source scaffold are maintainer-only artefacts that add no value to consumers and would just inflate every download.

0.1.0-scaffold - 2026-04-20 #

Added #

  • First release of rune_devtools_extension. Registers a rune tab inside Flutter DevTools that inspects live RuneView instances from a host app running in debug or profile mode.
  • The extension calls ext.rune.inspect on the host isolate over the VM service protocol. rune >= 1.18.0 registers that extension lazily on the first RuneView mount. Payload shape: {"views": [{"id", "source", "data", "cacheSize", "lastError"}]}.
  • UI is a list of expandable cards, one per live view:
    • Source string (selectable, monospace).
    • Data context pretty-printed as JSON.
    • Parse-cache size.
    • Last render error (surfaces RuneException caret pointers).
    • Snapshot-builder errors isolated per view.
  • Read-only: no write-back in v0.1.0. Future versions may add source hot-edit and a historical error log.
  • 7 unit tests on the wire-format parser cover happy-path, missing fields, stringly-typed id coercion, non-Map data, cacheSize num-to-int coercion, and error-field pass-through.

Notes #

  • The package ships a pre-built Flutter web app under extension/devtools/build/. Run flutter build web per the README to regenerate after modifying the extension source.
  • Release builds of the host app pay zero cost because dart:developer.registerExtension is compiled out.
0
likes
140
points
12
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

Flutter DevTools extension for the rune package. Inspect live RuneView instances, their source, data context, and last error from the DevTools tab.

Homepage
Repository (GitHub)
View/report issues
Contributing

Topics

#rune #devtools #extension #debugging #inspector

License

MIT (license)

Dependencies

devtools_app_shared, devtools_extensions, flutter, rune

More

Packages that depend on rune_devtools_extension