Standard CLI - Awesome Go
Libraries for building standard or basic Command Line applications.
- acmd - Simple, useful, and opinionated CLI package in Go.
- argparse - Command line argument parser inspired by Python's argparse module.
- argv - Go library to split command line string as arguments array using the bash syntax.
- carapace - Command argument completion generator for spf13/cobra.
- carapace-bin - Multi-shell multi-command argument completer.
- carapace-spec - Define simple completions using a spec file.
- climax - Alternative CLI with "human face", in spirit of Go command.
- clîr - A Simple and Clear CLI library. Dependency free.
- cmd - Extends the standard flag package to support sub commands and more in idiomatic way.
- cmdr - A POSIX/GNU style, getopt-like command-line UI Go library.
- cobra - Commander for modern Go CLI interactions.
- command-chain - A go library for configure and run command chains - such as pipelining in unix shells.
- commandeer - Dev-friendly CLI apps: sets up flags, defaults, and usage based on struct fields and tags.
- complete - Write bash completions in Go + Go command bash completion.
- Dnote - A simple command line notebook with multi-device sync.
- elvish - An expressive programming language and a versatile interactive shell.
- env - Tag-based environment configuration for structs.
- flag - Simple but powerful command line option parsing library for Go supporting subcommand.
- flaggy - A robust and idiomatic flags package with excellent subcommand support.
- flagvar - A collection of flag argument types for Go's standard flag package.
- go-andotp - A CLI program to encrypt/decrypt andOTP files. Can be used as a library as well.
- go-arg - Struct-based argument parsing in Go.
- go-commander - Go library to simplify CLI workflow.
- go-flags - go command line option parser.
- go-getoptions - Go option parser inspired by the flexibility of Perl’s GetOpt::Long.
- gocmd - Go library for building command line applications.
- hiboot cli - cli application framework with auto configuration and dependency injection.
- job - JOB, make your short-term command as a long-term job.
- kingpin - Command line and flag parser supporting sub commands (superseded by kong; see below).
- liner - Go readline-like library for command-line interfaces.
- mcli - A minimal but very powerful cli library for Go.
- mitchellh/cli - Go library for implementing command-line interfaces.
- mkideal/cli - Feature-rich and easy to use command-line package based on golang struct tags.
- mow.cli - Go library for building CLI applications with sophisticated flag and argument parsing and validation.
- ops - Unikernel Builder/Orchestrator.
- pflag - Drop-in replacement for Go's flag package, implementing POSIX/GNU-style --flags.
- readline Shell library with modern and easy to use UI features.
- sand - Simple API for creating interpreters and so much more.
- sflags - Struct based flags generator for flag, urfave/cli, pflag, cobra, kingpin, and other libraries.
- strumt - Library to create prompt chain.
- subcmd - Another approach to parsing and running subcommands. Works alongside the standard flag package.
- survey - Build interactive and accessible prompts with full support for windows and posix terminals.
- teris-io/cli - Simple and complete API for building command line interfaces in Go.
- ts - Timestamp convert & compare tool.
- ukautz/clif - Small command line interface framework.
- urfave/cli - Simple, fast, and fun package for building command line apps in Go (formerly codegangsta/cli).
- version - Collects and displays CLI version information in multiple formats along with upgrade notice.
- wlog - Simple logging interface that supports cross-platform color and concurrency.
- wmenu - Easy to use menu structure for cli applications that prompt users to make choices.