Golang equivalent of Python’s click (CLT framework)

This page summarizes the projects mentioned and recommended in the original post on /r/golang

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • eclipse

    Discontinued python-fire inspired library to simplify creating CLIs in Go, built on top of Cobra [Moved to: https://github.com/avamsi/clifr]

  • (Shameless plug) Also check out https://github.com/avamsi/eclipse!

  • go-flags

    go command line option parser

  • go-flags

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • kong

    Kong is a command-line parser for Go (by alecthomas)

  • kong

  • cobra

    A Commander for modern Go CLI interactions

  • I’m a fan of both cobra and urfave/cli

  • bubbletea

    A powerful little TUI framework 🏗

  • I don't think it's what you're after and I haven't used it myself, but thought I'd share this so you're aware of just what all is out there: https://github.com/charmbracelet/bubbletea

  • viper

    Go configuration with fangs

  • I’ll be honest, I prefer urfave/cli over cobra generally speaking. Not for any reason outside of personal preference due to development experience. urfave/cli just feels more intuitive to me. However, if I’m building a CLI tool with really complex configuration, I’ll typically choose cobra and pair it with viper to make sure handling config loading is done properly. Both cobra and viper were written by the same person (and both widely used in production in conjunction with each other), so I trust they’ll play nicely.

  • koanf

    Simple, extremely lightweight, extensible, configuration management library for Go. Support for JSON, TOML, YAML, env, command line, file, S3 etc. Alternative to viper.

  • You can also use Viper with urfave/cli, or you can replace Viper with knadh/koanf, which I personally prefer.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts