Skip to main content

modulapp_core 1.0.1 copy "modulapp_core: ^1.0.1" to clipboard
modulapp_core: ^1.0.1 copied to clipboard

A set of static methods/getters to unify dependency injection, logging, etc, across app's modules/sfeatures

Core #

A set of static methods/getters to unify dependency injection, logging, etc, across app's modules/sfeatures

Start unifying your features by just overriding inject & get methods #

Note:

  • This example use flutter_inject as dependency injection package
  • This example use dart:developer for the logging method
  • For dependency injection, you can use any context based package
import 'dart:developer' as dev;
import 'package:flutter/material.dart';
import 'package:flutter_inject/flutter_inject.dart' as pkg;
import 'package:modulapp_core/modulapp_core.dart';

void main() {
  // Define project's dependency injection
  Core.inject = <T>({required factory, required builder}) => pkg.Inject<T>(builder: builder, factory: factory);
  // Define project's instance getter through context
  Core.get = <T>(context) => pkg.Dependency.get<T>(context);
  // Define project's logging method
  Core.log = <T>(msg1, [msg2, msg3]) => dev.log('[$msg1] $msg2\n$msg3');

  runApp(
    MaterialApp(
      // Note: here we're calling injectAll which an alias of Core.injectAll
      home: injectAll(
        dependencies: [
          Dependency<String>((context) => 'This text has been injected'),
          Dependency<int>((context) => 5),
        ],
        builder: (context) => const HomeView(),
      ),
    ),
  );
}
1
likes
160
points
16
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

A set of static methods/getters to unify dependency injection, logging, etc, across app's modules/sfeatures

Repository (GitLab)
View/report issues

License

BSD-3-Clause (license)

Dependencies

flutter

More

Packages that depend on modulapp_core