Add your CLI description here
Add your content here
Add your content here
For a list of commands, run golang-cli-boilerplate --help
.
golang-cli-boilerplate --help
- Out-of-the-box environment variable management 🌳
- add your content here
This CLI includes a MakeFile and a TaskFile with the necessary (best practices) configuration to build and lint your CLI. Both tools include the same capability, so you can choose the one you prefer. In order to enforce precommit hooks, run:
# Using the TaskFile
task pre-commit-init
# Or, using the MakeFile
make pre-commit-init
The binaries are managed by GoReleaser, Homebrew and Release please. For a more detailed set of instructions, see the installation file. If you're a Linux/MacOS
user, you can install it using Homebrew:
brew tap Excoriate/homebrew-tap
brew install golang-cli-boilerplate
NOTE: The
brew
method requires a validGITHUB_TOKEN
environment variable with enough permissions to read and write into thetap
repository.
Add your content here.
This template is equipped with an array of tools to maintain a high standard of code quality and accelerate the development process:
- Precommit framework for managing and maintaining multi-language pre-commit hooks
- Taskfile is a simpler way to automate tasks
- Makefile for managing build workflow
- GolangCI-linter for consolidated linting to improve code quality
- GoReleaser for easy binary release management
- Docker for containerization
- ShellCheck for shell script linting
- Release please for automated releases
NOTE: For pre-commit, ensure you're running
task pre-commmit-init
to add the pre-configured hooks into yourgit
hooks. This will ensure that the code is linted and formatted before committing it. Also, there are other linters included (yaml, docker, shell, md, etc.).
Add your content here
Please read our contributing guide. All issues, pull requests and GitHub stars are welcome! Happy coding! 💻
Find me in: