Popularity
4.0
Growing
Activity
8.2
Growing
79
4
7

Programming language: Go
License: MIT License
Tags: Command Line     Standard CLI    
Latest version: v1.7.37

cmdr alternatives and similar packages

Based on the "Standard CLI" category.
Alternatively, view cmdr alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of cmdr or a related project?

Add another 'Standard CLI' Package

README

cmdr

Build Status Go GitHub tag (latest SemVer) GoDoc FOSSA Status go.dev Go Report Card codecov Coverage Status Mentioned in Awesome Go <!-- https://gowalker.org/github.com/hedzr/cmdr -->

cmdr is a POSIX-compliant, command-line UI (CLI) library in Golang. It is a getopt-like parser of command-line options, be compatible with the getopt_long command line UI, which is an extension of the syntax recommended by POSIX.

We made many enhancements beyond the standard library flag.

There is a fully-functional Options Store (configurations) for your hierarchical configuration dataset too.

The .netCore version [Cmdr.Core](https ://github.com/hedzr/Cmdr.Core) is available now. And, a cxx version cmdr-cxx was pre-released just now (Happy Spring Festival 2021).

ee99d078e2f7 <!-- built by https://ezgif.com/ -->

To review the image frames, go surfing at https://github.com/hedzr/cmdr/issues/1#issuecomment-567779978

Table of Contents

<!-- Created by gh-md-toc -->

Youtube - 李宗盛2013最新單曲 山丘 官方完整版音檔 / Jonathan Lee - Hill CHT + ENU

Import

The better choice is importing with go-modules enabled:

import "github.com/hedzr/cmdr"

See our extras:

and Bonus of #cmdr Series:

News

  • docs (WIP):

  • v1.8.7 (WIP)

    • todo
  • v1.8.5

    • updated log, fixed: forwarding systemd log to file
  • v1.8.2

    • compliant with plan9,bsd,...
    • some data racing PRBs in parallel testing
  • v1.8.1

    • fixed the CI error by imported from log
    • fixed a data racing in config files watching
    • small imp: pprof - added validArgs for cmdr-opt profiling-type
    • update deps: log & logex(logrus indirect, ...)
  • v1.8.0

    • BREAK: removed support to golang 1.11 and below
    • update deps: log & logex(logrus indirect, ...)
  • v1.7.46

    • added plugin/pprof package to simplify pprof integration
    • slight improvements
  • More details at [CHANGELOG](./CHANGELOG)

Features

[Features.md](old/Features.md)

Old README.md: [README.old.md](old/README.old.md)

About the Docker build

Here is a docker build for cmdr/examples/fluent so that you can run it without go building or downloading the release files:

# from Docker Hub:
$ docker run -it --rm hedzr/cmdr-fluent
$ docker run -it --rm hedzr/cmdr-fluent --help

# from Github Packages (please following the guide of GitHub Packages Site):
$ docker run -it --rm docker.pkg.github.com/hedzr/cmdr/cmdr-fluent
$ docker run -it --rm docker.pkg.github.com/hedzr/cmdr/cmdr-fluent --help

For Developer

[For Developer](old/Developer.md)

Examples

  1. [short](./examples/short/README.md)
    simple codes with structured data style.

  2. [demo](./examples/demo/README.md)
    normal demo with external config files.

  3. [wget-demo](./examples/wget-demo/README.md)
    partial-covered for GNU wget.

  4. [fluent](./examples/fluent)
    demostrates how to define your command-ui with the fluent api style.

  5. [ffdemo](./examples/ffdemo)

a demo to show you how to migrate from go flag smoothly.

  1. cmdr-http2
    http2 server with daemon supports, graceful shutdown

  2. awesome-tool
    awesome-tool is a cli app that fetch the repo stars and generate a markdown summary, accordingly with most of awesome-xxx list in github (such as awesome-go).

See Also the examples index: [Examples.md](old/Examples.md) (zh-cn TODO: [Examples.zh-cn.md](old/Examples.zh-cn.md))

Uses

Contrib

Feel free to issue me bug reports and fixes. Many thanks to all contributors.

Thanks to JODL

Thanks to JetBrains for donating product licenses to help develop cmdr jetbrains

goland

License

MIT

FOSSA Status


*Note that all licence references and agreements mentioned in the cmdr README section above are relevant to that project's source code only.