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
Last synced: 3 days ago
JSON representation
-
Bash/Shell
-
[Crystal](https://crystal-lang.org/)
- Athena Console
- OptionParser - line options processing.
-
[C++](https://www.cpp-lang.net/)
- argh!
- args - only C++ argument parser library. Supposed to be flexible and powerful, and attempts to be compatible with the functionality of the Python standard argparse library (though not necessarily the API).
- 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
-
[Dart](https://dart.dev/)
-
[Deno](https://deno.land/)
- deno-cliffy - Interfaces, Prompts, CLI-Table, Arguments Parser and more...
-
[Dotnet](https://dotnet.microsoft.com/)
-
Useful awesome list for Dotnet cli
-
[Elixir](https://elixir-lang.org/)
-
Useful awesome list for Dotnet cli
- Owl - line user interfaces in Elixir.
-
-
[Fortran](https://fortran-lang.org/)
-
Useful awesome list for Dotnet cli
- FLAP - to-use, elegant command line interfaces.
-
-
[Go](https://go.dev/)
-
Useful awesome list for Dotnet cli
- 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.
-
Useful awesome list for Go cli
- Awesome-go - go#command-line)
-
-
[Haskell](https://www.haskell.org/)
-
Useful awesome list for Go cli
- CmdArgs
- Docopt.hs
- optparse-applicative - sensitive bash, zsh, and fish completions.
-
-
[Java](https://dev.java/)
-
Useful awesome list for Go cli
- args4j
- Apache Commons CLI
- Jcommander
- Jline3
- Picocli - friendly, GraalVM-enabled command line apps with ease.
-
-
[JavaScript](https://developer.mozilla.org/en-US/docs/Web/JavaScript)
-
Useful awesome list for Go cli
- 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).
- 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
- 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, ...
- Commander.js - line interfaces.
-
-
[Julia](https://julialang.org/)
-
Useful awesome list for Go cli
-
-
[Kotlin](https://kotlinlang.org/)
-
Useful awesome list for Go cli
-
-
[Nim](https://nim-lang.org/)
-
Useful awesome list for Go cli
- clapfn
- cliche
- cligen - line-interfaces / option / argument parsing.
- docopt.nim
- loki - oriented command interpreters in Nim.
- nim-argparse
- nim-confutils
-
-
[Ocaml](https://ocaml.org/)
-
[PHP](https://www.php.net/)
-
Useful awesome list for Go cli
- 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 - line applications in PHP.
- 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
-
-
[Purescript](https://www.purescript.org/)
-
Useful awesome list for Go cli
-
-
[Python](https://www.python.org/)
-
Useful awesome list for Go cli
- 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.
- Cyclopts
- 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.
- Plac
- Python-Fire
- 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.
- Argparse
- jsonargparse
- PyCli
- Typer
- jsonargparse
- jsonargparse
- jsonargparse
- jsonargparse
- jsonargparse
- jsonargparse
- jsonargparse
- jsonargparse
- jsonargparse
- jsonargparse
- jsonargparse
- jsonargparse
- jsonargparse
- jsonargparse
- jsonargparse
- jsonargparse
- jsonargparse
-
-
[Ruby](https://www.ruby-lang.org/)
-
Useful awesome list for Go cli
- 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.
-
Useful awesome list for Ruby cli
- Awesome-ruby - ruby#cli-builder) and [#Cli-utilities](https://github.com/markets/awesome-ruby#cli-builder)
-
-
[Rust](https://www.rust-lang.org/)
-
[Scala](https://www.scala-lang.org/)
-
Useful awesome list for Ruby cli
-
-
[Swift](https://www.swift.org/)
-
Useful awesome list for Ruby cli
- swift-argument-parser - safe argument parsing for Swift
- Commander
-
-
[Zig](https://ziglang.org/)
-
[R](https://www.r-project.org/)
-
Useful awesome list for Ruby cli
-
-
[V](https://vlang.io/)
Categories
[Python](https://www.python.org/)
36
[JavaScript](https://developer.mozilla.org/en-US/docs/Web/JavaScript)
13
[Go](https://go.dev/)
11
[Dotnet](https://dotnet.microsoft.com/)
8
[Ruby](https://www.ruby-lang.org/)
7
[Nim](https://nim-lang.org/)
7
[Rust](https://www.rust-lang.org/)
7
[C++](https://www.cpp-lang.net/)
7
[PHP](https://www.php.net/)
7
[Java](https://dev.java/)
5
Bash/Shell
4
[Haskell](https://www.haskell.org/)
3
[Ocaml](https://ocaml.org/)
3
[Swift](https://www.swift.org/)
2
[V](https://vlang.io/)
2
[Kotlin](https://kotlinlang.org/)
2
[Crystal](https://crystal-lang.org/)
2
[Dart](https://dart.dev/)
2
[Zig](https://ziglang.org/)
2
License
2
[Elixir](https://elixir-lang.org/)
1
[R](https://www.r-project.org/)
1
[Deno](https://deno.land/)
1
[Julia](https://julialang.org/)
1
[Fortran](https://fortran-lang.org/)
1
[Scala](https://www.scala-lang.org/)
1
[Purescript](https://www.purescript.org/)
1
Sub Categories
Keywords
cli
45
command-line
38
argument-parser
13
argument-parsing
11
terminal
10
command-line-parser
10
python
9
cli-framework
7
dotnet-core
7
golang
7
go
7
shell
7
cli-app
6
command-line-tool
6
dotnet
5
option-parser
5
nodejs
5
argparse
5
parser
5
prompt
4
ruby
4
framework
4
command-line-interface
4
argv
4
javascript
4
typescript
4
dotnet-standard
4
node
4
bash
4
php
4
options-parsing
3
golang-library
3
cpp11
3
cli-args
3
subcommands
3
commandline
3
rust
3
console
3
nim
3
interactive
3
command
2
micro-framework
2
symfony
2
tool
2
command-line-tools
2
nim-lang
2
argv-parser
2
posix
2
cli-generator
2
awesome-list
2