ezbloc 5.1.3 copy "ezbloc: ^5.1.3" to clipboard
ezbloc: ^5.1.3 copied to clipboard

Make bloc easy again! A simple and low boilerplate implementation of the bloc state management pattern. Includes extras to work with blocs like testing, monitoring and persistence.

example/main.dart

import 'package:ezbloc/ezbloc.dart';

class BroadcastPrinter extends BlocMonitor {
  @override
  void onBroadcast(bloc, state, {String? event}) {
    print('[$bloc] broadcast: $state ($event)');
  }
}

final class CounterBloc extends Bloc<int> {
  CounterBloc() : super(initialState: 0, monitor: BroadcastPrinter());

  // event names are optional and only used for debugging purpose
  void increment() => setState(state + 1, event: 'increment');

  void decrement() => setState(state - 1, event: 'decrement');
}

void main() {
  final bloc = CounterBloc();

  bloc.stream.listen((s) => print(s));

  bloc.increment();
  bloc.decrement();
}
3
likes
140
points
150
downloads

Publisher

verified publishermuha.dev

Weekly Downloads

Make bloc easy again! A simple and low boilerplate implementation of the bloc state management pattern. Includes extras to work with blocs like testing, monitoring and persistence.

Repository (GitHub)

Documentation

API reference

License

MIT (license)

Dependencies

hive, meta, path, pedantic, quick_log, rxdart, stack_trace, test

More

Packages that depend on ezbloc