isValidProject static method

bool isValidProject(
  1. AppLogger log
)

Returns true if the current directory is a valid Flutter project root.

Implementation

static bool isValidProject(AppLogger log) {
  if (!File(p.join(root, 'pubspec.yaml')).existsSync()) {
    log.error(
      '❌ Error: No pubspec.yaml found. Are you in a Flutter project root?',
    );
    return false;
  }

  final hasAndroid =
      File(p.join(root, 'android/app/build.gradle')).existsSync() ||
          File(p.join(root, 'android/app/build.gradle.kts')).existsSync();
  final hasIOS = Directory(p.join(root, 'ios/Runner.xcodeproj')).existsSync();

  if (!hasAndroid && !hasIOS) {
    log.error(
      '❌ Error: No valid Flutter Android or iOS project structure found.',
    );
    return false;
  }

  return true;
}