devtools_extensions 0.0.8 devtools_extensions: ^0.0.8 copied to clipboard
A package for building and supporting extensions for Dart DevTools.
Example DevTools Extension #
This is an end-to-end example of a DevTools extension, including
- the parent
package:foo
that provides the DevTools extension to end-user applications (foo/packages/foo
) - the end-user application (
app_that_uses_foo
) that depends onpackage:foo
, which will trigger a load of thepackage:foo
DevTools extension when debugging this app with DevTools - the
package:foo
DevTools extension (foo/packages/foo_devtools_extension
), which is a Flutter web app that will be embedded in DevTools when debugging an app the usespackage:foo
This example will show you how to:
- Structure your package for optimal extension development and publishing
foo/ # formerly the repository root of your pub package packages/ foo/ # your pub package extension/ devtools/ build/ ... # pre-compiled output of foo_devtools_extension config.yaml foo_devtools_extension/ # source code for your extension
- Configure your extension using the
foo/extension/devtools/config.yaml
filename: foo issue_tracker: <link_to_your_issue_tracker.com> version: 0.0.1 material_icon_code_point: '0xe0b1'
- Use
package:devtools_extensions
andpackage:devtools_app_shared
to develop your DevTools extension (see source code underfoo_devtools_extension
). - Ship your extension with your pub package by including the pre-built assets
in the
foo/extension/devtools/build
directory.- For this example, the pre-built assets for
foo_devtools_extension
were added tofoo/extension/devtools/build
by running the following command from thefoo_devtools_extension/
directory:flutter pub get && dart run devtools_extensions build_and_copy \ --source=. \ --dest=../foo/extension/devtools
- For this example, the pre-built assets for