flag
Flag is a simple but powerful command line option parsing library for Go support infinite level subcommand (by cosiner)
go-arg
Struct-based argument parsing in Go (by alexflint)
flag | go-arg | |
---|---|---|
- | 6 | |
130 | 1,869 | |
- | - | |
4.5 | 5.4 | |
over 3 years ago | about 1 month ago | |
Go | Go | |
MIT License | BSD 2-clause "Simplified" License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
flag
Posts with mentions or reviews of flag.
We have used some of these posts to build our list of alternatives
and similar projects.
We haven't tracked posts mentioning flag yet.
Tracking mentions began in Dec 2020.
go-arg
Posts with mentions or reviews of go-arg.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-02-02.
- Go-Arg: Struct-based argument parsing in Go
-
Build a GitHub Issues Reporter for failing Kubernetes Apps with Botkube Plugins
Under the hood, the pluginx.ParseCommand method uses go-arg.
-
Libraries for CLI and console applications
I’ve used multiple libraries over the last two years but less is more and go-arg feels like something that would be in the stdlib: https://github.com/alexflint/go-arg
- Libraries you use most of your projects?
-
Best practice for configuring secrets
I use this: https://github.com/alexflint/go-arg and setting defaults for my local environment. So no need to keep a .env file.
-
Recommended framework/library for creating cli apps in go?
I personally swear by the go-arg package, as i prefer its library-not-framework approach.
What are some alternatives?
When comparing flag and go-arg you can also consider the following projects:
pflag - Drop-in replacement for Go's flag package, implementing POSIX/GNU-style --flags.
argparse - Argparse for golang. Just because `flag` sucks
cobra - A Commander for modern Go CLI interactions
kingpin - CONTRIBUTIONS ONLY: A Go (golang) command line and flag parser
go-flags - go command line option parser
urfave/cli - A simple, fast, and fun package for building command line apps in Go
viper - Go configuration with fangs
docopt.go - A command-line arguments parser that will make you smile.
envconfig - Small library to read your configuration from environment variables