moshaf_boilerplate 1.0.2 copy "moshaf_boilerplate: ^1.0.2" to clipboard
moshaf_boilerplate: ^1.0.2 copied to clipboard

A CLI tool for generating Flutter boilerplate structures based on Clean Architecture, BLoC, dependencies, and more.

example/lib/main.dart

import 'dart:async' as BlocOverrides;
import 'dart:async';
import 'dart:developer';

import 'package:easy_localization/easy_localization.dart';
import 'package:firebase_messaging/firebase_messaging.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:example_app/app.dart';
import 'package:example_app/core/config/app_config.dart';
import 'package:example_app/core/config/di_module/init_config.dart';
import 'package:example_app/core/env/secure_storage_key.dart';
import 'package:example_app/core/utils/bloc_providers.dart';
import 'package:example_app/core/utils/storage_data.dart';

void mainCommon({required Flavor flavor}) async {
  runZonedGuarded<Future<void>>(
    () async {
      WidgetsFlutterBinding.ensureInitialized();
      await SystemChrome.setPreferredOrientations([
        DeviceOrientation.portraitUp,
      ]);

      await AppConfig.initialize(flavor: flavor);

      await initConfig();

      // setup analytic
      // final analytic = getIt<Analytic>();
      // await analytic.init();

      String? locale = await storage.read(key: localeLangId);

      BlocOverrides.runZoned(
        () => runApp(
          ScreenUtilInit(
            builder: (_, __) => getBlocWrapper(
              EasyLocalization(
                supportedLocales: const [Locale('en'), Locale('id')],
                path: 'assets/translations',
                fallbackLocale: const Locale('en'),
                startLocale: Locale(locale ?? 'en'),
                child: const App(),
              ),
            ),
          ),
        ),
      );
    },
    (error, stack) => log(
      'Error in mainCommon: $error',
      name: 'MainCommon',
      error: error,
      stackTrace: stack,
    ),
    // CrashlyticsLogger.recordError(error, stack, fatal: true), // need firebase
  );
}

@pragma('vm:entry-point')
Future<void> _firebaseMessagingBackgroundHandler(RemoteMessage message) async {
  debugPrint("Handling a background message: ${message.messageId}");
}
0
likes
150
points
180
downloads

Publisher

unverified uploader

Weekly Downloads

A CLI tool for generating Flutter boilerplate structures based on Clean Architecture, BLoC, dependencies, and more.

Homepage
Repository (GitHub)
View/report issues

Topics

#flutter #boilerplate #generator #cli

Documentation

API reference

License

MIT (license)

Dependencies

path

More

Packages that depend on moshaf_boilerplate