This is an end-to-end example of a DevTools extension, including
package:foo
that provides the DevTools extension to end-user applications (foo/packages/foo
)app_that_uses_foo
) that depends on package:foo
, which will trigger a load of the package:foo
DevTools extension when debugging this app with DevToolspackage: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 uses package:foo
This example will show you how to:
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
foo/extension/devtools/config.yaml
filename: foo issue_tracker: <link_to_your_issue_tracker.com> version: 0.0.1 material_icon_code_point: '0xe0b1'
package:devtools_extensions
and package:devtools_app_shared
to develop your DevTools extension (see source code under foo_devtools_extension
).foo/extension/devtools/build
directory.foo_devtools_extension
were added to foo/extension/devtools/build
by running the following command from the foo_devtools_extension/
directory:flutter pub get && dart run devtools_extensions build_and_copy \ --source=. \ --dest=../foo/extension/devtools