dain 0.0.5

Dart native js
Flutter Android iOS web

A dynamic dependency injection framework for Dart developers.

[EAP] Dain #

pub package license

A dynamic dependency injection framework for Dart developers.
The library is created inspired by "Koin". (Not all features are yet covered.)

Basic Usage #

1. Create interface & implementation class. #

Let's create interface class.

abstract class ExampleService {
  void sayHello();
}

Next, create implementation class.
At this time, implementation class should extend interfaces.

class ExampleServiceImpl extends ExampleService {
  @override
  void sayHello() {
    print("Hello World!");
  }
}

2. Create module class & declaring dependencies. #

class ExampleModule extends Module {
  @override
  List<Bean> register() {
    return [
      single<ExampleService>(() => ExampleServiceImpl()),
    ];
  }
}

3. Register modules & inject class. #

void main() {
  Dain.start([
    ExampleModule(),
  ]);

  final exampleModel = Dain.inject<ExampleService>();
  exampleModel.sayHello(); // print "Hello World!"
}

Advanced #

[WIP]

0
likes
90
pub points
37%
popularity

A dynamic dependency injection framework for Dart developers.

Repository (GitHub)
View/report issues

Documentation

API reference

Uploader

weathercock.cage@gmail.com

License

MIT (LICENSE)

More

Packages that depend on dain