Cute Gopher Mascot

The Best Go Libraries For Command Line (85)

Discover the best Go libraries for Command Line! Find the perfect tools to streamline your development and boost productivity. From asciigraph to aurora, we've got you covered. Let the coding begin!

asciigraph

Go package to make lightweight ASCII line graph โ•ญโ”ˆโ•ฏ in command line apps with no other dependencies.

See More! ๐Ÿš€

aurora

ANSI terminal colors that support fmt.Printf/Sprintf.

See More! ๐Ÿš€

box-cli-maker

Make Highly Customized Boxes for your CLI.

See More! ๐Ÿš€

bubble-table

An interactive table component for bubbletea.

See More! ๐Ÿš€

bubbles

TUI components for bubbletea.

See More! ๐Ÿš€

bubbletea

Go framework to build terminal apps, based on The Elm Architecture.

See More! ๐Ÿš€

cfmt

Contextual fmt inspired by bootstrap color classes.

See More! ๐Ÿš€

cfmt

Simple and convenient formatted stylized output fully compatible with fmt library.

See More! ๐Ÿš€

chalk

Intuitive package for prettifying terminal/console output.

See More! ๐Ÿš€

colourize

Go library for ANSI colour text in terminals.

See More! ๐Ÿš€

crab-config-files-templating

Dynamic configuration file templating tool for kubernetes manifest or general configuration files.

See More! ๐Ÿš€

simpletable

Simple tables in a terminal with Go.

See More! ๐Ÿš€

spinner

Go package to easily provide a terminal spinner with options.

See More! ๐Ÿš€

ctc

The non-invasive cross-platform terminal color library does not need to modify the Print method.

See More! ๐Ÿš€

go-ataman

Go library for rendering ANSI colored text templates in terminals.

See More! ๐Ÿš€

go-colorable

Colorable writer for windows.

See More! ๐Ÿš€

go-colortext

Go library for color output in terminals.

See More! ๐Ÿš€

go-isatty

isatty for golang.

See More! ๐Ÿš€

go-palette

Go library that provides elegant and convenient style definitions using ANSI colors. Fully compatible & wraps the [fmt library](https://pkg.go.dev/fmt) for nice terminal layouts.

See More! ๐Ÿš€

go-prompt

Library for building a powerful interactive prompt, inspired by [python-prompt-toolkit](https://github.com/jonathanslenders/python-prompt-toolkit).

See More! ๐Ÿš€

gocui

Minimalist Go library aimed at creating Console User Interfaces.

See More! ๐Ÿš€

gookit/color

Terminal color rendering tool library, support 16 colors, 256 colors, RGB color rendering output, compatible with Windows.

See More! ๐Ÿš€

lipgloss

Declaratively define styles for color, format and layout in the terminal.

See More! ๐Ÿš€

marker

Easiest way to match and mark strings for colorful terminal outputs.

See More! ๐Ÿš€

mpb

Multi progress bar for terminal applications.

See More! ๐Ÿš€

progressbar

Basic thread-safe progress bar that works in every OS.

See More! ๐Ÿš€

pterm

A library to beautify console output on every platform with many combinable components.

See More! ๐Ÿš€

tabby

A tiny library for super simple Golang tables.

See More! ๐Ÿš€

table

Small library for terminal color based tables.

See More! ๐Ÿš€

tabular

Print ASCII tables from command line utilities without the need to pass large sets of data to the API.

See More! ๐Ÿš€

termbox-go

Termbox is a library for creating cross-platform text-based interfaces.

See More! ๐Ÿš€

termdash

Go terminal dashboard based on **termbox-go** and inspired by [termui](https://github.com/gizak/termui).

See More! ๐Ÿš€

termenv

Advanced ANSI style & color support for your terminal applications.

See More! ๐Ÿš€

termui

Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib).

See More! ๐Ÿš€

uilive

Library for updating terminal output in real time.

See More! ๐Ÿš€

uiprogress

Flexible library to render progress bars in terminal applications.

See More! ๐Ÿš€

wmenu

Easy to use menu structure for cli applications that prompt users to make choices.

See More! ๐Ÿš€

uitable

Library to improve readability in terminal apps using tabular data.

See More! ๐Ÿš€

yacspin

Yet Another CLi Spinner package, for working with terminal spinners.

See More! ๐Ÿš€

acmd

Simple, useful, and opinionated CLI package in Go.

See More! ๐Ÿš€

argparse

Command line argument parser inspired by Python's argparse module.

See More! ๐Ÿš€

argv

Go library to split command line string as arguments array using the bash syntax.

See More! ๐Ÿš€

carapace

Command argument completion generator for spf13/cobra.

See More! ๐Ÿš€

carapace-bin

Multi-shell multi-command argument completer.

See More! ๐Ÿš€

carapace-spec

Define simple completions using a spec file.

See More! ๐Ÿš€

climax

Alternative CLI with "human face", in spirit of Go command.

See More! ๐Ÿš€

clรฎr

A Simple and Clear CLI library. Dependency free.

See More! ๐Ÿš€

cmd

Extends the standard `flag` package to support sub commands and more in idiomatic way.

See More! ๐Ÿš€

cmdr

A POSIX/GNU style, getopt-like command-line UI Go library.

See More! ๐Ÿš€

cobra

Commander for modern Go CLI interactions.

See More! ๐Ÿš€

command-chain

A go library for configure and run command chains - such as pipelining in unix shells.

See More! ๐Ÿš€

commandeer

Dev-friendly CLI apps: sets up flags, defaults, and usage based on struct fields and tags.

See More! ๐Ÿš€

complete

Write bash completions in Go + Go command bash completion.

See More! ๐Ÿš€

Dnote

A simple command line notebook with multi-device sync.

See More! ๐Ÿš€

elvish

An expressive programming language and a versatile interactive shell.

See More! ๐Ÿš€

env

Tag-based environment configuration for structs.

See More! ๐Ÿš€

flag

Simple but powerful command line option parsing library for Go supporting subcommand.

See More! ๐Ÿš€

flaggy

A robust and idiomatic flags package with excellent subcommand support.

See More! ๐Ÿš€

flagvar

A collection of flag argument types for Go's standard `flag` package.

See More! ๐Ÿš€

go-andotp

A CLI program to encrypt/decrypt [andOTP](https://github.com/andOTP/andOTP) files. Can be used as a library as well.

See More! ๐Ÿš€

go-arg

Struct-based argument parsing in Go.

See More! ๐Ÿš€

go-commander

Go library to simplify CLI workflow.

See More! ๐Ÿš€

go-flags

go command line option parser.

See More! ๐Ÿš€

go-getoptions

Go option parser inspired by the flexibility of Perlโ€™s GetOpt::Long.

See More! ๐Ÿš€

gocmd

Go library for building command line applications.

See More! ๐Ÿš€

job

JOB, make your short-term command as a long-term job.

See More! ๐Ÿš€

kingpin

Command line and flag parser supporting sub commands (superseded by `kong`; see below).

See More! ๐Ÿš€

liner

Go readline-like library for command-line interfaces.

See More! ๐Ÿš€

mcli

A minimal but very powerful cli library for Go.

See More! ๐Ÿš€

mitchellh/cli

Go library for implementing command-line interfaces.

See More! ๐Ÿš€

mkideal/cli

Feature-rich and easy to use command-line package based on golang struct tags.

See More! ๐Ÿš€

mow.cli

Go library for building CLI applications with sophisticated flag and argument parsing and validation.

See More! ๐Ÿš€

ops

Unikernel Builder/Orchestrator.

See More! ๐Ÿš€

pflag

Drop-in replacement for Go's flag package, implementing POSIX/GNU-style --flags.

See More! ๐Ÿš€

sand

Simple API for creating interpreters and so much more.

See More! ๐Ÿš€

sflags

Struct based flags generator for flag, urfave/cli, pflag, cobra, kingpin, and other libraries.

See More! ๐Ÿš€

strumt

Library to create prompt chain.

See More! ๐Ÿš€

subcmd

Another approach to parsing and running subcommands. Works alongside the standard `flag` package.

See More! ๐Ÿš€

survey

Build interactive and accessible prompts with full support for windows and posix terminals.

See More! ๐Ÿš€

teris-io/cli

Simple and complete API for building command line interfaces in Go.

See More! ๐Ÿš€

ts

Timestamp convert & compare tool.

See More! ๐Ÿš€

ukautz/clif

Small command line interface framework.

See More! ๐Ÿš€

urfave/cli

Simple, fast, and fun package for building command line apps in Go (formerly codegangsta/cli).

See More! ๐Ÿš€

version

Collects and displays CLI version information in multiple formats along with upgrade notice.

See More! ๐Ÿš€

wlog

Simple logging interface that supports cross-platform color and concurrency.

See More! ๐Ÿš€