very_good_cli 0.10.0 icon indicating copy to clipboard operation
very_good_cli: ^0.10.0 copied to clipboard

A Very Good Command-Line Interface for Dart created by Very Good Ventures.

Very Good CLI Logo

ci coverage pub package style: very good analysis License: MIT


A Very Good Command-Line Interface for Dart.

Developed with πŸ’™ by Very Good Ventures πŸ¦„

Documentation πŸ“ #

For official documentation, please visit https://cli.vgv.dev.

Quick Start πŸš€ #

Installing πŸ§‘β€πŸ’» #

dart pub global activate very_good_cli

Commands ✨ #

very_good create #

Create a very good project in seconds based on the provided template. Each template has a corresponding sub-command (e.g.,very_good create flutter_app will generate a Flutter starter app).

Very Good Create

Creates a new very good project in the specified directory.

Usage: very_good create <subcommand> <project-name> [arguments]
-h, --help    Print this usage information.

Available subcommands:
  dart_cli          Creates a new very good Dart CLI in the specified directory.
  dart_package      Creates a new very good Dart package in the specified directory.
  docs_site         Creates a new very good docs site in the specified directory.
  flame_game        Creates a new very good Flame game in the specified directory.
  flutter_app       Creates a new very good Flutter app in the specified directory.
  flutter_package   Creates a new very good Flutter package in the specified directory.
  flutter_plugin    Creates a new very good federated Flutter plugin in the specified directory.

Run "very_good help" to see global options.

Usage

# Create a new Flutter app named my_app
very_good create flutter_app my_app

# Create a new Flutter app named my_app with a custom org
very_good create flutter_app my_app --desc "My new Flutter app" --org "com.custom.org"

# Create a new Flutter app named my_app with a custom application id
very_good create flutter_app my_app --desc "My new Flutter app" --application-id "com.custom.app.id"

# Create a new Flame game named my_game
very_good create flame_game my_game --desc "My new Flame game"

# Create a new Flutter package named my_flutter_package
very_good create flutter_package my_flutter_package --desc "My new Flutter package"

# Create a new Dart package named my_dart_package
very_good create dart_package my_dart_package --desc "My new Dart package"

# Create a new Dart package named my_dart_package that is publishable
very_good create dart_package my_dart_package --desc "My new Dart package" --publishable

# Create a new Dart CLI application named my_dart_cli
very_good create dart_cli my_dart_cli --desc "My new Dart CLI package"

# Create a new Dart CLI application named my_dart_cli with a custom executable name
very_good create dart_cli my_dart_cli --desc "My new Dart CLI package" --executable-name my_executable_name

# Create a new Flutter plugin named my_flutter_plugin (all platforms enabled)
very_good create flutter_plugin my_flutter_plugin --desc "My new Flutter plugin"

# Create a new Flutter plugin named my_flutter_plugin (some platforms only)
very_good create flutter_plugin my_flutter_plugin --desc "My new Flutter plugin" --platforms android,ios,macos

# Create a new docs site named my_docs_site
very_good create docs_site my_docs_site

Syntax changes in v0.10.0

⚠️ v0.10.0 changed the syntax of the very_good create command. Learn about the changes here.


very_good packages get #

Get packages in a Dart or Flutter project.

# Install packages in the current directory
very_good packages get

# Install packages in ./some/other/directory
very_good packages get ./some/other/directory

# Install packages recursively
very_good packages get --recursive

# Install packages recursively (shorthand)
very_good packages get -r

very_good test #

Run tests in a Dart or Flutter project.

# Run all tests
very_good test

# Run all tests and collect coverage
very_good test --coverage

# Run all tests and enforce 100% coverage
very_good test --coverage --min-coverage 100

# Run only tests in ./some/other/directory
very_good test ./some/other/directory

# Run tests recursively
very_good test --recursive

# Run tests recursively (shorthand)
very_good test -r

very_good --help #

See the complete list of commands and usage information.

πŸ¦„ A Very Good Command-Line Interface

Usage: very_good <command> [arguments]

Global options:
-h, --help           Print this usage information.
    --version        Print the current version.
    --analytics      Toggle anonymous usage statistics.

          [false]    Disable anonymous usage statistics
          [true]     Enable anonymous usage statistics

Available commands:
  create     very_good create <output directory>
             Creates a new very good project in the specified directory.
  packages   Command for managing packages.
  test       Run tests in a Dart or Flutter project.

Run "very_good help <command>" for more information about a command.