Back to rankings

VeryGoodOpenSource/very_good_cli

Dartcli.vgv.dev

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

dartflutterclidart-packagedart-libraryflutter-packageflutter-pluginflutter-test
Star Growth
Stars
2.4k
Forks
238
Weekly Growth
Issues
15
1k1.5k2k
Feb 2021Nov 2022Sep 2024Jul 2026
README

Very Good CLI


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

Or install a specific version using:

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:

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

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

# 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.

# 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.

# 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.

# 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.

# 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.

🦄 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.
Related repositories
flutter/flutter

Flutter makes it easy and fast to build beautiful apps for mobile and beyond

DartBSD 3-Clause "New" or "Revised" Licensemobileandroid
flutter.dev
177.9k30.7k
rustdesk/rustdesk

An open-source remote desktop application designed for self-hosting, as an alternative to TeamViewer.

Rustcrates.ioGNU Affero General Public License v3.0remote-controlremote-desktop
rustdesk.com
118.6k18.1k
localsend/localsend

An open-source cross-platform alternative to AirDrop

DartApache License 2.0flutterfile-sharing
localsend.org
85.7k4.7k
alibaba/flutter-go

flutter 开发者帮助 APP,包含 flutter 常用 140+ 组件的demo 演示与中文文档

DartOtherflutterdart
flutter-go.pub/website/
23.7k3.8k
iampawan/FlutterExampleApps

[Example APPS] Basic Flutter apps, for flutter devs.

Dartflutterflutter-apps
21.5k3.8k
antlr/antlr4

ANTLR (ANother Tool for Language Recognition) is a powerful parser generator for reading, processing, executing, or translating structured text or binary files.

JavaMavenBSD 3-Clause "New" or "Revised" Licenseparsingparser-generator
antlr.org
19k3.5k
flutter-team-archive/plugins

Plugins for Flutter maintained by the Flutter team

DartBSD 3-Clause "New" or "Revised" Licenseflutterdart
flutter.dev
17.7k9.6k
flutter/plugins

Plugins for Flutter maintained by the Flutter team

DartBSD 3-Clause "New" or "Revised" Licenseflutterdart
flutter.dev
17.6k9.8k
CarGuo/gsy_github_app_flutter

Flutter 超完整的开源项目,功能丰富,适合学习和日常使用。GSYGithubApp 系列的优势:我们目前已经拥有 Flutter、Weex、ReactNative、Kotlin View、Kotlin Jetpack Compose ,Compose MultiPlatform,Harmony ArkUI 七个版本,功能齐全,项目框架内技术涉及面广,完成度高,持续维护,配套文章,适合全面学习,对比参考。

DartApache License 2.0flutterflutter-ui
juejin.im/user/582aca2ba22b9d006b59ae68/posts
15.5k2.6k
guozhigq/pilipala

PiliPala 是使用Flutter开发的BiliBili第三方客户端,感谢使用。

DartGNU General Public License v3.0bilibilidart
pilipala.life
13.9k1k
cfug/dio

A powerful HTTP client for Dart and Flutter, which supports global settings, Interceptors, FormData, aborting and canceling a request, files uploading and downloading, requests timeout, custom adapters, etc.

DartMIT Licenseflutterdart
dio.pub
12.8k1.6k
felangel/bloc

A predictable state management library that helps implement the BLoC design pattern

DartMIT Licenseflutterdart
bloclibrary.dev
12.5k3.4k