Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/fzdwx/infinite
Help you to create interactive command line applications in Go.
https://github.com/fzdwx/infinite
autocomplete cli command-line-tool confirm golang multi-process-bar processbar prompt select terminals tui
Last synced: about 1 month ago
JSON representation
Help you to create interactive command line applications in Go.
- Host: GitHub
- URL: https://github.com/fzdwx/infinite
- Owner: fzdwx
- License: mit
- Created: 2022-08-02T12:10:59.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-03-19T07:56:47.000Z (9 months ago)
- Last Synced: 2024-04-17T16:20:09.574Z (8 months ago)
- Topics: autocomplete, cli, command-line-tool, confirm, golang, multi-process-bar, processbar, prompt, select, terminals, tui
- Language: Go
- Homepage: https://fzdwx.github.io/infinite/zh/guide/
- Size: 1.64 MB
- Stars: 352
- Watchers: 4
- Forks: 30
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- my-awesome - fzdwx/infinite - line-tool,confirm,golang,multi-process-bar,processbar,prompt,select,terminals,tui pushed_at:2024-10 star:0.4k fork:0.0k Help you to create interactive command line applications in Go. (Go)
README
# infinite
![gif](https://user-images.githubusercontent.com/65269574/184916069-076a0f6a-70bd-49e1-b7d7-0d2e7fc5c6bb.gif)
Help you to create interactive command line applications in Go.
## Features
- multi/single select
- progress-bar group
- spinner
- confirm(input/selection)
- input## Install
```shell
go get github.com/fzdwx/infinite@main
```## Examples
```go
func main() {
input := components.NewInput()
input.Prompt = "Filtering: "
input.PromptStyle = style.New().Bold().Italic().Fg(color.LightBlue)keymap := components.DefaultMultiKeyMap()
keymap.Choice = key.NewBinding(
key.WithKeys(tea.KeySpace.String()),
)
_, _ = inf.NewMultiSelect([]string{
"a", "b", "c",
"d", "e",
"f",
"g",
"h",
},
multiselect.WithKeyMap(keymap),
multiselect.WithHintSymbol("x"),
multiselect.WithUnHintSymbol("√"),
multiselect.WithPageSize(3),
multiselect.WithFilterInput(input),
).
Display("select your items!")
}
```More: https://github.com/fzdwx/infinite/tree/main/_examples
## License
MIT