urfave/cli
A declarative, simple, fast, and fun package for building command line tools in Go
Build with Backblaze B2
SDKs, agent skills, IDE extensions, and reference pipelines from Backblaze Labs. All open source.
Loading star history...
Use Cases & Benefits
- Provides a declarative and fast Go package for building command line tools with support for commands, subcommands, and flexible input flags.
- Offers zero dependencies outside the Go standard library, ensuring lightweight and efficient CLI application development.
- Use for creating complex CLI applications with nested commands and dynamic shell completions in Go projects.
- Use for generating documentation in man and Markdown formats to maintain clear CLI tool references.
- Use for building CLI tools that require input configuration from environment variables, plain text, or structured files like JSON, TOML, and YAML.
About cli
Welcome to urfave/cli
urfave/cli is a declarative, simple, fast, and fun package for building command line tools in Go featuring:
- commands and subcommands with alias and prefix match support
- flexible and permissive help system
- dynamic shell completion for
bash,zsh,fish, andpowershell - no dependencies except Go standard library
- input flags for simple types, slices of simple types, time, duration, and others
- compound short flag support (
-a-b-ccan be shortened to-abc) - documentation generation in
manand Markdown (supported via theurfave/cli-docsmodule) - input lookup from:
- environment variables
- plain text files
- structured file formats (supported via the
urfave/cli-altsrcmodule)
Documentation
See the hosted documentation website at https://cli.urfave.org. Contents of
this website are built from the ./docs directory.
Support
Check the Q&A discussions. If you don't find answer to your question, create a new discussion.
If you found a bug or have a feature request, create a new issue.
Please keep in mind that this project is run by unpaid volunteers.
License
See LICENSE.
Discover Repositories
Search across tracked repositories by name or description