0 purchases
djangoflow app
djangoflow_app #
A simple, opinionated, and minimal Flutter application structure for quick start and easy maintenance.
Getting started #
Add djangoflow_app as a dependency in your pubspec.yaml file.
dependencies:
djangoflow_app: <latest version>
copied to clipboard
Import djangoflow_app and use it to create your root StatelessWidget.
import 'package:djangoflow_app/djangoflow_app.dart';
void main() => DjangoflowAppRunner.run(
onException: (exception, stackTrace) {
// Your custom exception handling
},
rootWidgetBuilder: (appBuilder) async {
return MaterialApp(
title: 'Djangoflow App',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: appBuilder(AppBuilder(
repositoryProviders: [
// Your repository providers
],
providers: [
// Your BLoC providers
],
listeners: [
// Your BLoC listeners
],
builder: (context) => YourRootWidget(),
)),
);
},
);
copied to clipboard
Features #
AppBuilder: A custom StatelessWidget that allows you to provide global BlocProvider, BlocListener, RepositoryProvider, and callbacks for initState and dispose in a single place.
AppCubitBuilder, AppCubitConsumer, and AppCubitListener: A set of custom BlocBuilder, BlocConsumer, and BlocListener that allows you to listen to the AppCubit state changes.
DjangoflowAppRunner: A custom runApp that allows you to handle exceptions globally and sets up the HydratedBloc storage and BlocObserver for the entire application.
DjangoflowAppSnackbar: A simple SnackBar manager that allows you to show different types of SnackBar (info, error, in-app notification) globally with a single instance.
SandboxBanner: A simple Banner that allows you to show a banner on the top-start corner of the screen with a custom message and color. It's useful to indicate the current environment (e.g., sandbox, production).
EnvSwitcher: A simple widget that allows you to toggle between different environments with a long press.
Note #
DjangoflowAppSnackbar uses ScaffoldMessenger. DjangoflowAppSnackbar's global key needs to be provided to MaterialApp's scaffoldMessengerKey.
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.