Cute Gopher Mascot

The Best Go Libraries For Command Line (103)

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! ๐Ÿš€

bubble-table

An interactive table component for bubbletea

See More! ๐Ÿš€

box-cli-maker

Make Highly Customized Boxes for your CLI.

See More! ๐Ÿš€

bubbles

TUI components for bubbletea

See More! ๐Ÿš€

bubbletea

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

See More! ๐Ÿš€

simpletable

Simple tables in a terminal with Go

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! ๐Ÿš€

spinner

Go package to easily provide a terminal spinner with options

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! ๐Ÿš€

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! ๐Ÿš€

termbox-go

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

See More! ๐Ÿš€

tabular

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

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! ๐Ÿš€

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! ๐Ÿš€

yacspin

Yet Another CLi Spinner package, for working with terminal spinners

See More! ๐Ÿš€

argparse

Command line argument parser inspired by Python's argparse module

See More! ๐Ÿš€

carapace

Command argument completion generator for spf13/cobra

See More! ๐Ÿš€

climax

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

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! ๐Ÿš€

elvish

An expressive programming language and a versatile interactive shell

See More! ๐Ÿš€

flag

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

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! ๐Ÿš€

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! ๐Ÿš€

survey

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

See More! ๐Ÿš€

ts

Timestamp convert & compare tool.

See More! ๐Ÿš€

ukautz/clif

Small command line interface framework.

See More! ๐Ÿš€

go-ataman

Go library for rendering ANSI colored text templates in terminals

See More! ๐Ÿš€

teris-io/cli

Simple and complete API for building command line interfaces in Go

See More! ๐Ÿš€

version

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

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! ๐Ÿš€

gocui

Minimalist Go library aimed at creating Console User Interfaces

See More! ๐Ÿš€

lazyenv

TUI for browsing, comparing, and editing .env files

See More! ๐Ÿš€

loom

Signal-based reactive components framework for building TUIs

See More! ๐Ÿš€

table

Small library for terminal color based tables

See More! ๐Ÿš€

uilive

Library for updating terminal output in real time

See More! ๐Ÿš€

acmd

Simple, useful, and opinionated CLI package in Go

See More! ๐Ÿš€

argv

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

See More! ๐Ÿš€

carapace-bin

Multi-shell multi-command argument completer

See More! ๐Ÿš€

carapace-spec

Define simple completions using a spec file

See More! ๐Ÿš€

clรฎr

A Simple and Clear CLI library. Dependency free

See More! ๐Ÿš€

Dnote

A simple command line notebook with multi-device sync

See More! ๐Ÿš€

env

Tag-based environment configuration for structs

See More! ๐Ÿš€

flaggy

A robust and idiomatic flags package with excellent subcommand support

See More! ๐Ÿš€

gocmd

Go library for building command line applications

See More! ๐Ÿš€

hashicorp/cli

Go library for implementing command-line interfaces

See More! ๐Ÿš€

job

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

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! ๐Ÿš€

urfave/cli

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

See More! ๐Ÿš€

wlog

Simple logging interface that supports cross-platform color and concurrency

See More! ๐Ÿš€

tabby

A tiny library for super simple Golang tables

See More! ๐Ÿš€

uitable

Library to improve readability in terminal apps using tabular data

See More! ๐Ÿš€

gommon/color

Style terminal text

See More! ๐Ÿš€

phoenix

High-performance TUI framework with Elm-inspired architecture, perfect Unicode rendering, and zero-allocation event system

See More! ๐Ÿš€

box-cli-maker

Render highly customizable boxes in the terminal

See More! ๐Ÿš€

chroma16

Generate a harmonious 16-color terminal palette from a single seed color or string

See More! ๐Ÿš€

crab-config-files-templating

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

See More! ๐Ÿš€

ctc

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

See More! ๐Ÿš€

fx

Terminal JSON viewer & processor

See More! ๐Ÿš€

boa

Declarative flags, env vars, validation, and config files from struct tags. Built on cobra

See More! ๐Ÿš€

flash-flags

Ultra-fast, zero-dependency, POSIX-compliant flag parsing library that can be used as drop-in stdlib replacement with security hardening

See More! ๐Ÿš€

getopt

An accurate Go `getopt`, validated against the GNU libc implementation

See More! ๐Ÿš€

go-readline-ny

A customizable line-editing library with Emacs keybindings, Unicode support, completion, and syntax highlighting. Used in NYAGOS shell

See More! ๐Ÿš€

goopt

A declarative, struct-tag based CLI framework for Go, with a broad feature set such as hierarchical commands/flags, i18n, shell completion, and validation

See More! ๐Ÿš€

hiboot cli

cli application framework with auto configuration and dependency injection

See More! ๐Ÿš€

orpheus

CLI framework with security hardening, plugin storage system, and production observability features

See More! ๐Ÿš€

readline

Shell library with modern and easy to use UI features

See More! ๐Ÿš€

structcli

Eliminate Cobra boilerplate: build powerful, feature-rich CLIs declaratively from Go structs

See More! ๐Ÿš€

goscaf

goscaf generates opinionated, production-quality Go project boilerplate via an interactive CLI. Stop copy-pasting skeleton code between projects

See More! ๐Ÿš€