A simple, dependency-free CLI framework for Go with a minimal API and good defaults.
acmd is a simple, opinionated CLI package for Go that helps developers build command-line applications with minimal effort. It provides a clean API for defining commands, handling execution, and includes built-in features like help and version commands. The package addresses the complexity of larger CLI frameworks by offering a focused, dependency-free solution.
Go developers building command-line tools or applications who prefer a lightweight, straightforward CLI framework without external dependencies.
Developers choose acmd for its minimal API, lack of dependencies, and clear codebase, which reduce overhead and simplify CLI development compared to more complex alternatives.
Simple, useful and opinionated CLI package in Go.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
The API is straightforward and intuitive, allowing developers to define commands with minimal boilerplate, as highlighted in the Rationale for avoiding unclear APIs.
With no external dependencies, acmd reduces project bloat and simplifies deployment, a key feature emphasized in the README.
Includes automatic help and version commands, plus command suggestions, enhancing usability out of the box without extra configuration.
The codebase is well-tested and clean, promoting reliability and ease of maintenance, as noted in the features section.
Lacks advanced capabilities like subcommand nesting, complex flag handling, or middleware support, which are common in more comprehensive CLI frameworks.
As a lightweight package, it doesn't have the extensive plugins, integrations, or community resources of alternatives like cobra, limiting extensibility.
The opinionated design forces developers to adapt to its way of doing things, with little room for customization outside its simple API.