Общепризнанные
Cobra & Viper
Эти два пакета встречаются повсеместно. Cobra — разработка CLI для программы, Viper — работа с конфигурационными файлами.
Cobra
Install
Зависимость в проект:
go get -u github.com/spf13/cobra@latestЗатем в коде:
import "github.com/spf13/cobra"Очень помогает управление через Cobra CLI:
go install github.com/spf13/cobra-cli@latestCobra CLI: Init Project
После того как мы создали проект:
cd $HOME/code
mkdir myapp
cd myapp
go mod init github.com/spf13/myappЗаходим и инициализируем Cobra:
Команда создаст main.go файл и файлы для запуска в директории cmd.
Cobra CLI: Add commands to a project
Добавляем команды:
Добавить подкоманду команде config:
Теперь мы можем использовать эти команды:
Далее идем в файлы команд в cmd и кастомизируем их под себя, подробнее в The Cobra User Guide.
Viper
Others
Aurora — вывод в консоль красками https://github.com/logrusorgru/aurora
Atomic — обертка над базовыми типами: https://pkg.go.dev/go.uber.org/atomic
Last updated