very_good_cli icon indicating copy to clipboard operation
very_good_cli copied to clipboard

feat(create)!: use subcommands for different template types

Open felangel opened this issue 3 years ago • 0 comments

Proposal

By splitting the create command to use subcommands we can improve the usage and options to be subcommand-specific.

Since there are some common options for all create commands (<project name> --output-directory) and lots of options that are template-specific (platforms for the plugin, executable name for the CLI, etc.) this approach will allow us to organize the command in a way that better aligns with the intended usage/structure.

Proposed Usage

# Top Level Create Usage
very_good create <subcommand> <project-name> <options>

options:
  --verbose (-v)
  --help (-h)
  --output-directory (-o)
# Very Good Core Usage
very_good create flutter_app <project-name> <options>

options:
    --template="core"
    --org-name
    --description
# Very Good Dart Package Usage
very_good create dart_pkg <project-name> <options>

options:
    --description
# Very Good Dart CLI Usage
very_good create dart_cli <project-name> <options>

options:
    --executable-name
    --description
# Very Good Flutter Package Usage
very_good create flutter_pkg <project-name> <options>

options:
    --description
# Very Good Flutter Plugin Usage
very_good create flutter_plugin <project-name> <options>

options:
    --org-name
    --description
    --platforms

felangel avatar Aug 29 '22 16:08 felangel