Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

awesome-cli-frameworks

Collection of tools to build beautiful command line interface in different languages
https://github.com/shadawck/awesome-cli-frameworks

  • argc
  • argbash
  • Bashly - rich bash command line tools. Bashly lets you focus on your specific code, without worrying about command line argument parsing, usage texts, error messages and other functions that are usually handled by a framework in any other programming language.
  • gum
  • Athena Console
  • OptionParser - line options processing.
  • argh!
  • args - line arguments into a set of options and values.
  • CLI11
  • cxxopt
  • docopt.cpp
  • gflags - in support for standard types such as string and the ability to define flags in the source file in which they are used. Online documentation available at:
  • Lyra
  • args - line arguments into a set of options and values.
  • dcli
  • deno-cliffy - Interfaces, Prompts, CLI-Table, Arguments Parser and more...
  • CliFX
  • CliWrap
  • CommandDotnet
  • CommandLine
  • command-line-api
  • CommandLineUtils
  • gui.cs - based user interface toolkit for .NET applications.
  • spectre.console
  • awesome-dotnet
  • Owl - line user interfaces in Elixir.
  • FLAP - to-use, elegant command line interfaces.
  • cli
  • climate
  • Cobra - io/nanobox)/[Nanopack](https://github.com/nanopack), [rclone](http://rclone.org/), [nehm](https://github.com/bogem/nehm), [Pouch](https://github.com/alibaba/pouch), [Istio](https://istio.io), [Prototool](https://github.com/uber/prototool), [mattermost-server](https://github.com/mattermost/mattermost-server), [Gardener](https://github.com/gardener/gardenctl), [Linkerd](https://linkerd.io/),
  • Golang Agrparse
  • go-arg - based argument parsing in Go.
  • Docopt Go - line arguments based on a help message. Don't write parser code: a good help message already has all the necessary information in it.
  • Mow.cli
  • Clif
  • Kong - line structures with as little developer effort as possible.
  • Viper - Factor apps. It is designed to work within an application, and can handle all types of configuration needs and formats.
  • Awesome-go - go#command-line)
  • CmdArgs
  • Docopt.hs
  • optparse-applicative - sensitive bash, zsh, and fish completions.
  • args4j
  • Apache Commons CLI
  • Jcommander
  • Jline3
  • Picocli - friendly, GraalVM-enabled command line apps with ease.
  • Clipanion - one of the most complex command-line tool in the ecosystem - and small internal scripts. Clipanion is designed with type safety in mind, and leverages a syntax as idiomatic as possible to avoid cluttering your code with boilerplate.
  • Oclif - file CLIs with a few flag options, or for very complex CLIs that have subcommands (like git or heroku).
  • Commander.js - line interfaces.
  • Gluegun - powered command-line apps.
  • Ink - line apps. (See also [Pastel](https://github.com/vadimdemedes/pastel))
  • node-seeli
  • Caporal.js - featured framework for building command line applications (cli) with node.js, including help generation, colored output, verbosity control, custom logger, coercion and casting, typos suggestions, and auto-complete for bash/zsh/fish.
  • args - line arguments into a set of options and values.
  • Inquirer.js
  • Vorpal
  • Yargs
  • Clerc - featured library for building CLI Apps in Node.js, Deno or Bun. It's strongly-typed, easy-to-use and flexible.
  • Termost - featured framework to build your next command line interfaces (CLI) in a minute. Thanks to its fluent and type-safe API, you can easily express and manage your program metadata (including version and help), sub-commands, user prompts, tasks, options and flags, ...
  • Comonicon.jl
  • clikt
  • kotlinx-cli
  • clapfn
  • cliche
  • cligen - line-interfaces / option / argument parsing.
  • docopt.nim
  • loki - oriented command interpreters in Nim.
  • nim-argparse
  • nim-confutils
  • cmdliner
  • clap - Line Argument Parsing, imperative style with a consumption mechanism.
  • minicli
  • CliFramework - line application framework, for building flexiable, simple command-line applications.
  • laravel-zero - framework that provides an elegant starting point for your console application. It is an unofficial and customized version of Laravel optimized for building command-line applications.
  • minicli
  • php-cli - build great console apps with ease. Comes with Zero Dependency and Autocompletion support.
  • php-cli-tools
  • Silly - framework based on Symfony Console.
  • Symfony/Console
  • Optparse
  • Argparse
  • Click
  • Cliff
  • Cement - full platform for both simple and complex command line applications as well as support rapid development needs without sacrificing quality.
  • Cleo - line interfaces.
  • Clize - line interfaces.
  • Docopt - NG](https://github.com/jazzband/docopt-ng) : Pythonic command line arguments parser, that will make you smile. docopt parses command-line arguments based on a help message. Don't write parser code: a good help message already has all the necessary information in it.
  • jsonargparse
  • Plac
  • Python-Fire
  • PyCli
  • PyInquirer
  • PyFiglet
  • python-prompt-toolkit
  • SimpleParsing - line tool either, this simply adds new features to plain-old argparse !
  • Tap
  • Tyro - line interfaces and configuration objects in Python.
  • Typer
  • dry-ruby
  • TTY
  • Thor - documenting command line utilities. It removes the pain of parsing command line options, writing "USAGE:" banners, and can also be used as an alternative to the Rake build tool. The syntax is Rake-like, so it should be familiar to most Rake users.
  • Commander - line executables. Commander bridges the gap between other terminal related libraries you know and love (OptionParser, HighLine), while providing many new features, and an elegant API.
  • Clamp - line utilities. It handles boring stuff like parsing the command-line, and generating help, so you can get on with making your command actually do stuff.
  • Gli - line app in Ruby that behaves like ```git``` in that it takes subcommands to perform a series of complex action.
  • Awesome-ruby - ruby#cli-builder) and [#Cli-utilities](https://github.com/markets/awesome-ruby#cli-builder)
  • cli
  • Clap
  • Ratatui
  • StructOpt
  • rust-argparse - line argument parser library for rust.
  • Seahorse
  • Termion - level handling, manipulating and reading information about terminals.
  • Starbase
  • scopt
  • Commander - line executables. Commander bridges the gap between other terminal related libraries you know and love (OptionParser, HighLine), while providing many new features, and an elegant API.
  • swift-argument-parser - safe argument parsing for Swift
  • cli
  • flag
  • zig-cli
  • ![License
  • Shadawck