modulapp 1.0.0 copy "modulapp: ^1.0.0" to clipboard
modulapp: ^1.0.0 copied to clipboard

A Dart module.

module #

A very simple base class that defines common modules methods.

Keep it simple #

Here is a simple Module that defines simple routes

class HomeModule extends Module with ModuleRouter<MapEntry<String, WidgetBuilder>> {
  @override
  final List<MapEntry<String, WidgetBuilder>> routes = [
    MapEntry('/home', (context) => const HomeView()),
  ];
}

Same Module but with GoRouter routes

class HomeModule extends Module with ModuleRouter<RouteBase> {
  @override
  final List<RouteBase> routes = [
    GoRoute(path: '/home', builder: (context, state) => const HomeView()),
  ];
}

A Module that defines dependency injection (with flutter_inject) #

class HomeModule extends Module {
  @override
  WidgetBuilder injectDependencies({required WidgetBuilder builder}) {
    return (context) => InjectAll(
          dependencies: [
            Dependency<TodoRepository>((context) => TodoRepositoryImpl()),
          ],
          builder: builder,
        );
  }
}

Check the example section for a full example #

You'll also find in the Gitlab repository an advanced example with Modules that provides GoRouter routes, translations and dependency injection.

1
likes
0
points
15
downloads

Publisher

unverified uploader

Weekly Downloads

A Dart module.

Repository (GitLab)
View/report issues

License

unknown (license)

Dependencies

dartx, flutter, flutter_localizations

More

Packages that depend on modulapp