Build Powerful Go CLI Applications Using the Cobra Package 🐍

Shout out to my wife who makes these hilarious thumbnails, follow her on Twitter for more art stuff.

CLI applications are extremely handy to use. Building out a lot of the nice features that good CLI apps have can be a bit time-consuming though.

At least, it was, until cobra was created and that changed everything.

Cobra is a go package that can be utilized to create very robust CLI applications with very little effort.

It provides an impressive list of features:

  • Subcommand-based CLIs
  • POSIX-compliant flags (short/long versions)
  • Nested subcommands
  • Global, local, and cascading flags (explained in the video)
  • Application and command generator
  • Auto suggestions on command typos
  • Automatic help generation
  • Automatic help flag recognition
  • Generates shell autocompletion for bash, zsh, fish, and Powershell
  • Generates documentation, such as man pages
  • Command aliases
  • Integrates very well with viper

Check out the video tutorial where I give some basic examples of the various features of cobra.

If you liked it and want to know when I post more, be sure to subscribe and thank y'all again for your time!


Did you find this information useful? If so, consider heading over to my donation page and drop me some support.

Want to ask a question or just chat? Contact me here