Versions in this module Expand all Collapse all v2 v2.3.5 Mar 16, 2026 Changes in this version + const BarFormat + const BarWidth + const CharCNHyphen + const CharCenter + const CharEqual + const CharEqual1 + const CharHyphen + const CharLeftArrow + const CharPlus + const CharRightArrow + const CharRightArrow1 + const CharSpace + const CharSquare + const CharSquare1 + const CharSquare2 + const CharSquare3 + const CharSquare4 + const CharSquare5 + const CharStar + const CharUnderline + const CharWell + const DefFormat + const FullBarFormat + const FullFormat + const MdlBarFormat + const MinFormat + const TxtFormat + var BarStyles = []BarChars + var CharThemes = []rune + var CharsThemes = [][]rune + func GetCharTheme(index int) rune + func GetCharsTheme(index int) []rune + func MaxSteps(maxStep int) func(p *Progress) + func RandomCharTheme() rune + func RandomCharsTheme() []rune + func RenderFormat(f string) func(p *Progress) + type BarChars struct + Completed rune + Processing rune + Remaining rune + func RandomBarStyle() BarChars + type BuilderFunc func() string + type Progress struct + Format string + MaxSteps uint + Messages map[string]string + Newline bool + Overwrite bool + RedrawFreq uint8 + StepWidth uint8 + Widgets map[string]WidgetFunc + func Bar(maxSteps ...int) *Progress + func Counter(maxSteps ...int) *Progress + func CustomBar(width int, cs BarChars, maxSteps ...int) *Progress + func DynamicText(messages map[int]string, maxSteps ...int) *Progress + func Full(maxSteps ...int) *Progress + func LoadBar(chars []rune, maxSteps ...int) *Progress + func LoadingBar(chars []rune, maxSteps ...int) *Progress + func New(maxSteps ...int) *Progress + func NewWithConfig(fn func(p *Progress), maxSteps ...int) *Progress + func RoundTrip(char rune, charNumAndBoxWidth ...int) *Progress + func RoundTripBar(char rune, charNumAndBoxWidth ...int) *Progress + func SpinnerBar(chars []rune, maxSteps ...int) *Progress + func Tape(maxSteps ...int) *Progress + func Txt(maxSteps ...int) *Progress + func (p *Progress) AddMessage(name, message string) + func (p *Progress) AddMessages(msgMap map[string]string) + func (p *Progress) AddWidget(name string, handler WidgetFunc) *Progress + func (p *Progress) AddWidgets(widgets map[string]WidgetFunc) + func (p *Progress) Advance(steps ...uint) + func (p *Progress) AdvanceTo(step uint) + func (p *Progress) Binding(data interface{}) *Progress + func (p *Progress) Bound() interface{} + func (p *Progress) Config(fn func(p *Progress)) *Progress + func (p *Progress) Destroy() + func (p *Progress) Display() + func (p *Progress) Finish(message ...string) + func (p *Progress) FinishedAt() time.Time + func (p *Progress) Handler(name string) WidgetFunc + func (p *Progress) Percent() float32 + func (p *Progress) Progress() uint + func (p *Progress) SetWidget(name string, handler WidgetFunc) *Progress + func (p *Progress) Start(maxSteps ...int) + func (p *Progress) StartedAt() time.Time + func (p *Progress) Step() uint + func (p *Progress) WithMaxSteps(maxSteps ...int) *Progress + func (p *Progress) WithOptions(fns ...func(p *Progress)) *Progress + type Progresser interface + Advance func(steps ...uint) + AdvanceTo func(step uint) + Bound func() interface{} + Finish func(msg ...string) + Start func(maxSteps ...int) + type SpinnerFactory struct + Builder BuilderFunc + Format string + Speed time.Duration + func LoadingSpinner(chars []rune, speed time.Duration) *SpinnerFactory + func RoundTripLoading(char rune, speed time.Duration, charNumAndBoxWidth ...int) *SpinnerFactory + func RoundTripSpinner(char rune, speed time.Duration, charNumAndBoxWidth ...int) *SpinnerFactory + func Spinner(speed time.Duration) *SpinnerFactory + func (s *SpinnerFactory) Active() bool + func (s *SpinnerFactory) Restart() + func (s *SpinnerFactory) Start(format ...string) + func (s *SpinnerFactory) Stop(finalMsg ...string) + func (s *SpinnerFactory) WithBuilder(builder BuilderFunc) *SpinnerFactory + type WidgetFunc func(p *Progress) string + func BarWidget(width int, cs BarChars) WidgetFunc + func DynamicTextWidget(messages map[int]string) WidgetFunc + func LoadingWidget(chars []rune) WidgetFunc + func RoundTripWidget(char rune, charNum, boxWidth int) WidgetFunc