run method

  1. @override
void run()
override

Runs this command.

The return value is wrapped in a Future if necessary and returned by CommandRunner.runCommand.

Implementation

@override
void run() async {
  try {
    final appName = _validateAndGetAppName();
    if (appName == null) return;

    final config = _prepareConfiguration(appName);
    await _executeProjectCreation(config);
    _reportSuccess(config['workingDirectory']);
  } catch (e) {
    StatusHelper.failed('Project creation failed: ${e.toString()}',
        suggestion:
            'Ensure Git is installed and you have internet connectivity',
        examples: ['git --version', 'morpheme doctor']);
  }
}