GitPedia

Very good cli

A Very Good Command-Line Interface for Dart created by Very Good Ventures ๐Ÿฆ„

From VeryGoodOpenSourceยทUpdated June 15, 2026ยทView on GitHubยท

[![ci][ci_badge]][ci_link] [![coverage][coverage_badge]][ci_link] [![pub package][pub_badge]][pub_link] [![style: very good analysis][very_good_analysis_badge]][very_good_analysis_link] [![License: MIT][license_badge]][license_link] The project is written primarily in Dart, distributed under the MIT License license, first published in 2021. It has gained significant community traction with 2,384 stars and 238 forks on GitHub. Key topics include: cli, dart, dart-library, dart-package, flutter.

Latest release: v1.2.0

<img src="https://raw.githubusercontent.com/VeryGoodOpenSource/very_good_cli/main/site/static/img/cli_icon.svg" align="left" />

Very Good CLI

<br clear="left"/>

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 ๐Ÿง‘โ€๐Ÿ’ป

sh
dart pub global activate very_good_cli

Or install a specific version using:

sh
dart pub global activate very_good_cli <version>

If you haven't already, you might need to set up your path.

When that is not possible (eg: CI environments), run very_good commands via:

sh
dart pub global run very_good_cli:very_good <command> <args>

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

sh
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: app_ui_package Generate a Very Good App UI package. dart_cli Generate a Very Good Dart CLI application. dart_package Generate a Very Good Dart package. docs_site Generate a Very Good documentation site. flame_game Generate a Very Good Flame game. flutter_app Generate a Very Good Flutter application. flutter_package Generate a Very Good Flutter package. flutter_plugin Generate a Very Good Flutter plugin. Run "very_good help" to see global options.

Usage

sh
# 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 App UI package named my_app_ui_package very_good create app_ui_package my_app_ui_package --desc "My new App UI package" # 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

very_good test

Run tests in a Dart or Flutter project.

sh
# 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 # Run tests on a specific platform very_good test --platform chrome

very_good packages get

Get packages in a Dart or Flutter project.

sh
# 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 packages check licenses

Check packages' licenses in a Dart or Flutter project.

sh
# Check licenses in the current directory very_good packages check licenses # Only allow the use of certain licenses very_good packages check licenses --allowed="MIT,BSD-3-Clause,BSD-2-Clause,Apache-2.0" # Deny the use of certain licenses very_good packages check licenses --forbidden="unknown" # Check licenses for certain dependencies types very_good packages check licenses --dependency-type="direct-main,transitive" # Check and list licenses in the current directory very_good packages check licenses --reporter="csv"

very_good mcp

Start the MCP (Model Context Protocol) server for AI assistant integration.

โ„น๏ธ Experimental
This command relies on the Dart MCP Server. This is an experimental package and may change or become unstable without notice. Use it with caution at your own risk.

sh
# Start the MCP server very_good mcp

The MCP server exposes Very Good CLI functionality through the Model Context Protocol, allowing AI assistants to interact with the CLI programmatically. This enables automated project creation, testing, and package management through MCP-compatible tools.

Available MCP Tools:

very_good --help

See the complete list of commands and usage information.

sh
๐Ÿฆ„ A Very Good Command-Line Interface Usage: very_good <command> [arguments] Global options: -h, --help Print this usage information. --version Print the current version. --[no-]verbose Noisy logging, including all shell commands executed. Available commands: create very_good create <subcommand> <project-name> [arguments] Creates a new very good project in the specified directory. mcp Start the MCP (Model Context Protocol) server. WARNING: This is an experimental package and may change or become unstable without notice. Use it with caution at your own risk. packages Command for managing packages. test Run tests in a Dart or Flutter project. update Update Very Good CLI. Run "very_good help <command>" for more information about a command.

Contributors

Showing top 12 contributors by commit count.

View all contributors on GitHub โ†’

This article is auto-generated from VeryGoodOpenSource/very_good_cli via the GitHub API.Last fetched: 6/16/2026