State management in Flutter with bloc: a practical guide

A predictable state management library that helps implement the BLoC design pattern.

CategoryState management
Stars★ 12,474
Last update2026-07-15
PriorityHigh

bloc is an open-source state-management library for Flutter mobile app development, with 12,474★ on GitHub and last updated on 2026-07-15. This guide covers what bloc does, why it matters in 2026, how to add it to your project, when to reach for it, and how it compares to the alternatives — plus a quick FAQ.

What is bloc?

A predictable state management library that helps implement the BLoC design pattern. It focuses on keeping your UI in sync with your app state as it changes. The project lives at felangel/bloc and is maintained by felangel.

Why bloc is worth knowing in 2026

bloc carries 12,474 GitHub stars, 3,417 forks, 71 open issues. It has been around since 2018, and is actively maintained (updated within the last month). For a State management option, that combination of adoption and upkeep usually means a healthy community, production usage, and plenty of examples to learn from — the things that make a dependency safe to build on.

Installing bloc

Add the package to your pubspec.yaml:

dependencies:
  bloc: ^latest

Then fetch it and import it in your Dart code:

flutter pub get
import 'package:bloc/bloc.dart';

Check the package’s example/ directory and its pub.dev page for the exact API — bloc is versioned there with full docs so you always integrate against the current release.

When should you use bloc?

Reach for bloc when:

  • your widget tree needs to react to shared, changing data
  • you want to separate business logic from presentation
  • you’re scaling past setState and need predictable rebuilds

It’s especially relevant if your project touches angulardart, bloc, concurrency, dart, dart-library, dart-web.

bloc vs. the alternatives

If you’re weighing options in the State management space, these are the other projects developers most often compare bloc against:

There’s no single winner — the right pick depends on your app’s size, your team’s familiarity, and your performance budget. Browse the full State management collection to compare them side by side.

Frequently asked questions

Is bloc free to use?

Yes. bloc is open source and free to use in your Flutter projects. You can view the source, report issues, and contribute on GitHub.

Does bloc work on both iOS and Android?

bloc is built for Flutter, so it targets iOS and Android from a single codebase, and typically web and desktop too depending on the project’s platform support.

As of 2026, bloc has around 12,474 stars and 3,417 forks on GitHub, which puts it among the more widely used options in the State management space.

What are good alternatives to bloc?

Popular alternatives in the State management category include getx, flutter-architecture-samples, riverpod. The best choice depends on your app’s size, team, and performance needs.

How do I install bloc?

Add bloc to the dependencies section of your pubspec.yaml and run flutter pub get. Full versions and API docs are on pub.dev.


Part of FlutterCook — 500 hands-on guides to the best open-source Flutter libraries, UI kits, and apps. Explore the live GitHub trends or browse YouTube guides.