isValidProject static method
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;
}