Support for building plugins in Dart.
This project defines a simple framework for defining plugins. A plugin is the unit of extensibility for a host application.
An extension point represents one way of extending the host application. For example, a file viewer application might define an extension point to allow viewers for new file types to be added to the application.
The host application must provide at least one extension point that plugins can extend. Every extension point must have a unique name associated with it, and should specify the type of the objects that will be accepted as extensions. In the example above, the extension point might require that all extensions implement the interface FileViewer.
Any plugin can define extension points that other plugins can extend. The host application contributes its own extension point(s) by defining a plugin.
An extension is an object that a plugin associates with a particular extension point. To continue the example, a plugin that supports the viewing of .gif files would create an instance of GifFileViewer, a class that implements FileViewer.
The framework in this package then connects the defined extensions with the defined extension points so that the separately contributed plugins can coordinate to accomplish the larger goal.
Please file feature requests and bugs at the issue tracker.
Add this to your package's pubspec.yaml file:
dependencies: plugin: ^0.2.0+2
You can install packages from the command line:
$ pub get
Alternatively, your editor might support
Check the docs for your editor to learn more.
Now in your Dart code, you can use:
|0.2.0+3||Jul 17, 2018|
|0.2.0+2||Sep 29, 2017|
|0.2.0+1||Jul 20, 2017|
|0.2.0||May 10, 2016|
|0.1.0||Apr 6, 2015|
Describes how popular the package is relative to other packages. [more]
Code health derived from static analysis. [more]
Reflects how tidy and up-to-date the package is. [more]
Weighted score of the above. [more]
The package version is not analyzed, because it does not support Dart 2. Until this is resolved, the package will receive a health and maintenance score of 0.
Support Dart 2 in
The SDK constraint in
pubspec.yaml doesn't allow the Dart 2.0.0 release. For information about upgrading it to be Dart 2 compatible, please see https://www.dartlang.org/dart-2#migration.
|Dart SDK||>=1.0.0 <2.0.0|