Skip to main content

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

A lightweight reusable Bloc architecture with centralized state handling, loading, error handling, and UI building.

example/lib/main.dart

import 'package:centralized_bloc/centralized_bloc.dart';
import 'package:example/bloc/user_bloc.dart';
import 'package:example/bloc/user_event.dart';
import 'package:example/repository/user_repository.dart';
import 'package:example/user_screen.dart';
import 'package:flutter/material.dart';

void main() {
  CentralizedBlocConfig.configure(
    loadingBuilder: (context) {
      return const Center(
        child: CircularProgressIndicator.adaptive(),
      );
    },
    errorBuilder: (context, message) {
      return Center(
        child: Text(
          'Oops: $message',
        ),
      );
    },
  );

  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      home: BlocProvider(
        create: (_) => UserBloc(
          repository: UserRepository(),
        )..add(const LoadUser()),
        child: const UserScreen(),
      ),
    );
  }
}
1
likes
150
points
339
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

A lightweight reusable Bloc architecture with centralized state handling, loading, error handling, and UI building.

License

MIT (license)

Dependencies

flutter, flutter_bloc

More

Packages that depend on centralized_bloc