Categorygithub.com/aserto-dev/clui
modulepackage
0.8.3
Repository: https://github.com/aserto-dev/clui.git
Documentation: pkg.go.dev

# README

clui

Go Reference Go Report Card

Command Line User Interface library for building user interfaces that interact with humans. You can find a more comprehensive example here.

demo

Usage

Printing messages

ui := clui.NewUI()
ui.Normal().Msg("The quick brown fox jumps over the lazy dog!")

Asking for input

ui := clui.NewUI()

var stringResult string
ui.Normal().
  WithAskString("What's your name?", &stringResult).
  Do()

Spinner progress

ui := clui.NewUI()
p := ui.Progress("Doing something in the background")
p.Start()
defer p.Stop()
time.Sleep(5 * time.Second)

Tables

ui := clui.NewUI()
ui.Normal().WithTable("#", "Name", "Age", "Link").
  WithTableRow("1", "Stephen J. Fry", "20", "https://aserto.com").Do()

# Packages

No description provided by the author

# Functions

NewDotProgress creates a new DotProgress.
NewUI creates a new UI.
NewUI creates a new UI with a specific output.
No description provided by the author
NewUI creates a new UI with a specific input, error output and output.

# Structs

DotProgress implements a progress indicator by printing a series of dots as time goes by.
Message represents a piece of information we want displayed to the user.
UI contains functionality for dealing with the user on the CLI.

# Interfaces

Progress abstracts the operations for a progress meter and/or spinner used to indicate the cli waiting for some background operation to complete.