createAllProjects method
Create all projects based on config
Implementation
Future<bool> createAllProjects() async {
info('Creating projects...');
// Ensure the output directory exists before any flutter/dart create runs.
// Without this `dart/flutter create <outputDir>/<appName>` fails with
// `PathNotFoundException` when the user passes `-d` to a brand-new path.
final Directory outDir = Directory(config.outputDir);
if (!outDir.existsSync()) {
await outDir.create(recursive: true);
}
// Create main app based on template type
if (config.template.isFlutterApp) {
if (!await createFlutterApp()) {
return false;
}
} else if (config.template.isDartCli) {
if (!await createDartCli()) {
return false;
}
} else if (config.template.isJasprApp) {
if (!await createJasprApp()) {
return false;
}
}
// Create models package if enabled
if (config.createModels) {
if (!await createModelsPackage()) {
return false;
}
}
// Create server app if enabled
if (config.createServer) {
if (!await createServerApp()) {
return false;
}
}
success('All projects created successfully!');
return true;
}