Avila Tek Mobile Open Source (ATMOS) CLI

v

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


Customized version of the Very Good Command-Line Interface from ATMOS ⛰️.

Documentation 📝

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

Quick Start 🚀

Installing 🧑‍💻

dart pub global activate atmos_cli

Or install a specific version using:

dart pub global activate atmos_cli <version>

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

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

dart pub global run atmos_cli:atmos <command> <args>

Commands ✨

atmos create

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

Creates a new very good project in the specified directory.

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

Available subcommands:
  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 an **Avila Tek** Flutter application.
  flutter_package   Generate a Very Good Flutter package.
  flutter_plugin    Generate a Very Good Flutter plugin.

Run "atmos help" to see global options.

Usage

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

# Create a new Flutter app named my_app with a custom org
atmos 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
atmos create flutter_app my_app --desc "My new Flutter app" --application-id "com.custom.app.id"

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

# Create a new Wear OS app named my_wear_app
atmos create flutter_app my_wear_app --desc "My new Wear OS app" --template wear

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

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

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

# Create a new Dart CLI application named my_dart_cli
atmos 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
atmos 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)
atmos create flutter_plugin my_flutter_plugin --desc "My new Flutter plugin"

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

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


atmos test

Run tests in a Dart or Flutter project.

# Run all tests
atmos test

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

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

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

# Run tests recursively
atmos test --recursive

# Run tests recursively (shorthand)
atmos test -r

atmos packages get

Get packages in a Dart or Flutter project.

# Install packages in the current directory
atmos packages get

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

# Install packages recursively
atmos packages get --recursive

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

atmos packages check licenses

Check packages' licenses in a Dart or Flutter project.

# Check licenses in the current directory
atmos packages check licenses

# Only allow the use of certain licenses
atmos packages check licenses --allowed="MIT,BSD-3-Clause,BSD-2-Clause,Apache-2.0"

# Deny the use of certain licenses
atmos packages check licenses --forbidden="unknown"

# Check licenses for certain dependencies types
atmos packages check licenses --dependency-type="direct-main,transitive"

atmos --help


See the complete list of commands and usage information.

🦄 A Very Good Command-Line Interface

Usage: atmos <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     atmos create <subcommand> <project-name> [arguments]
             Creates a new very good project in the specified directory.
  packages   Command for managing packages.
  test       Run tests in a Dart or Flutter project.
  update     Update Very Good CLI.

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

Libraries

atmos_cli
CLI tool fitted to Avila Tek ⛰️ projects.