setupFlutterProject function

void setupFlutterProject()

Implementation

void setupFlutterProject() async {
  final directories = [
    'lib/core/constants',
    'lib/core/errors',
    'lib/core/function',
    'lib/core/network',
    'lib/core/utils',
    'lib/data',
    'lib/localization',
    'lib/presentation',
    'lib/routes',
    'lib/theme',
    'lib/widgets',
  ];
  final files = {
    'lib/core/constants/constants.dart': '',
    'lib/core/errors/exceptions.dart': '',
    'lib/core/errors/failures.dart': '',
    'lib/core/function/dio_get.dart': '',
    'lib/core/function/dio_post.dart': '',
    'lib/core/network/network_info.dart': '',

    'lib/core/utils/app_export.dart': '',
    'lib/core/utils/pref_utils.dart': '',
    'lib/core/utils/initial_bindings.dart': '',

    'lib/core/app_export.dart': '',
    'lib/firebase_options.dart': '',
    'lib/main.dart': '',
    'lib/routes/app_routes.dart': '''
import 'package:get/get.dart';
/// Add Next import

class AppRoutes {
/// Auto Create By
/// Flutter helper package
/// www.webspec.in

     /// Add Next String

     static List<GetPage> pages = [
        /// Add Next Route
      ];
     }
     ''',
  };

  // Create directories
  for (var dir in directories) {
    await Directory('$dir').create(recursive: true);
  }

  // Create files
  files.forEach((path, content) async {
    final file = File('$path');
    await file.create(recursive: true);
    await file.writeAsString(content);
  });

// Install the latest version of GetX package
  print('Installing the latest version of GetX package...');
  final result = Process.runSync('dart', ['pub', 'add', 'get']);
  if (result.exitCode == 0) {
    print('GetX package installed successfully.');
  } else {
    print('Failed to install GetX package.');
    print(result.stderr);
    return;
  }

  // Install the latest version of dio package
  print('Installing the latest version of dio package...');
  final dioResult = Process.runSync('dart', ['pub', 'add', 'dio']);
  if (dioResult.exitCode == 0) {
    print('dio package installed successfully.');
  } else {
    print('Failed to install dio package.');
    print(dioResult.stderr);
    return;
  }

   // Install the latest version of get_storage package
  print('Installing the latest version of get_storage package...');
  final getStorageResult = Process.runSync('dart', ['pub', 'add', 'get_storage']);
  if (getStorageResult.exitCode == 0) {
    print('get_storage package installed successfully.');
  } else {
    print('Failed to install get_storage package.');
    print(getStorageResult.stderr);
    return;
  }

  print('Flutter project setup complete.');
}