{"repo":"gookit/gcli","free":true,"listed":false,"github":"https://github.com/gookit/gcli","clone":"git clone https://github.com/gookit/gcli.git","description":"🖥 Go CLI application, tool library, running CLI commands, support console color, user interaction, progress display, data formatting display, generate bash/zsh completion add more features. Go的命令行应用，工具库，运行CLI命令，支持命令行色彩，用户交互，进度显示，数据格式化显示，生成bash/zsh命令补全脚本","language":"Go","stars":381,"topics":["cli","command-line","cli-app","console","cli-application","cli-progress-bar","cli-commands","commands","console-application","gookit"],"license":"MIT","category":"cli-tools","readme_excerpt":"GCli A simple and easy-to-use command-line application and tool library written in Golang. Including running commands, color styles, data display, progress display, interactive methods, etc. 中文说明 Features Rich in functions and easy to use. Highlights grouped by area: Commands - Multi-level (nested) commands, each level binds its own options - Command aliases and similar-command tips on typo (alias-aware) - Command/App middleware via Use(handlers ...RunnerFunc) - A single command can run as a stand-alone application Option binding - Code-style binders: BoolOpt / IntOpt / StrOpt / Float64Opt / VarOpt ... - Generic, type-safe binders: gflag.Opt[T] / gflag.BindVar[T] — one call covers bool/int/uint/float/string , time.Duration , []string/[]int/[]bool , map[string]string - Struct-tag binding via FromStruct : - three tag rules: named (default) / simple / field (field name as option name); anonymous embedded structs auto-expand under any rule - field types: bool/int/uint/float/string , native []string/[]int/[]bool (repeatable), time.Duration , map[string]string (repeatable --meta k=v ) - enum:\"a,b,c\" tag for value candidates(completion) + membership validation - Required / Validator / Choices per option; option Category for grouped help display Three-level option model - Global (App-level) options - Shared (inherited) options via Command.SharedOpts() (≈ cobra PersistentFlags ): inherited by the command and all its sub-commands (sharing the same variable), grouped under Inherited Opt","default_branch":null,"files":null,"tree":[],"storefront":"/r/gookit","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/gookit/gcli/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}