lipgloss
termenv
Our great sponsors
lipgloss | termenv | |
---|---|---|
26 | 6 | |
7,104 | 1,617 | |
3.4% | - | |
7.8 | 6.0 | |
7 days ago | about 1 month ago | |
Go | Go | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
lipgloss
-
When creating console based applications how do you replicate the following realtime updates:
I recommend looking at the charm libraries. Lip gloss https://github.com/charmbracelet/lipgloss can provide the styling and bubble tea can handle the screen updates and framework https://github.com/charmbracelet/bubbletea there is a premade progress bar component in bubbles library. https://github.com/charmbracelet/bubbles
-
A Java library to work with the ANSI OSC52 terminal sequence.
I saw https://github.com/charmbracelet/lipgloss and was wondering if there is anything equivalent in the JVM ecosystem. I couldn't find anything so I started crawling its deps tree and reimplementing to fall asleep at night.
-
Portal - a modern file transfer utility 🌌✨
nhooyr/websocket, shollz/pake, charmbracelet/bubbles, charmbracelet/bubbletea, charmbracelet/lipgloss, muesli/reflow, klauspost/pgzip and many, many more.
- toolman.org/terminal/decor
- Equivalent to Pythons Rich?
-
GUI brain tries to learn shell scripting
Off the top of my head i am thinking of charmbracelet/lipgloss but I don't know if its the best suited to my use case.
-
Powerful template for CLI projects in Go 🐹
Predefined colors for lipgloss
-
I built my first CLI tool to help me look up HTTP status codes!
Yes i've seen the centered text. Take a look at lipglossif you don't mind adding dependencies, they make the styling much more easier in my opinion.
-
Gum: A tool for glamorous shell scripts
At Charm, we generally use Go for all our libraries like Bubble Tea, Bubbles, and Lip Gloss. Go should be easy to pick up if you know JavaScript and Python. That being said there are also fantastic libraries available for Python (https://github.com/Textualize/rich) and JavaScript as well.
-
Gum: a tool for glamorous shell scripts
I think you can, but if you're using Go I would recommend using Bubble Tea, Bubbles, and Lip Gloss for better customizability and flexibility (you can also use the gum code as reference).
termenv
-
go playground code doesn't work locally?
For example: https://github.com/muesli/termenv // Clear the visible portion of the terminal output := termenv.NewOutput(os.Stdout) output.ClearScreen()
-
tint: 🌈 slog.Handler that writes tinted logs
Why not let termenv do the hard part of making this portable across terminals? It also supports lesser-known conventions like NO_COLOR.
-
Tran - 🖥 Securely transfer and send anything between computers with TUI.
Termenv
-
Show HN: Lip Gloss a CSS-like layout library for the terminal for Go
This is the function they are using to detect the background color:
https://github.com/muesli/termenv/blob/d1b90ad4a4915162648dd...
(There’s a different version of it for Windows.)
-
Tz: A Time Zone Helper
Look, you and I may have sane ANSI 16 colours, but it’ll be a very significant fraction of people that don’t (and almost no one will customise the next 240 colours). Remember things like that there’s a fairly high chance that blue is almost invisible against black, and even bright blue’s contrast is commonly much too low—to say nothing of the limited palette range.
But what this program is doing is using termenv’s HasDarkBackground function to decide whether the terminal is light or dark, and is then specifying RGB colours. I’d guess that it’ll try to guess whether to use 16 colours, 256 colours or 24-bit colour, but I don’t know. But the way it figures out the terminal’s background colour… ugh. Some terminals will support it, but for many it’ll fail and just assume black. Looks like on unix you could set an environment variable COLORFGBG to override this, https://github.com/muesli/termenv/blob/6bb55115565c27f4cc681..., but if you’re on Windows, tough luck, apparently you’re not allowed to have run `color f0` (Command Prompt) or similar: https://github.com/muesli/termenv/blob/537e36cb0472a69a3c828....
The simple fact of the matter is that there are no particularly good solutions for handling colour in terminals if you want the colours to cohere and map to real-world colour understanding, which is what something like this would prefer to be able to do.
What are some alternatives?
bubbletea - A powerful little TUI framework 🏗
pterm - ✨ #PTerm is a modern Go module to easily beautify console output. Featuring charts, progressbars, tables, trees, text input, select menus and much more 🚀 It's completely configurable and 100% cross-platform compatible.
tcell - Tcell is an alternate terminal package, similar in some ways to termbox, but better in others.
termbox-go - Pure Go termbox implementation
termdash - Terminal based dashboard.
protoactor-go - Proto Actor - Ultra fast distributed actors for Go, C# and Java/Kotlin
go-isatty
mpb - multi progress bar for Go cli applications
go-prompt - Building powerful interactive prompts in Go, inspired by python-prompt-toolkit.
GCli - 🖥 Go CLI application, tool library, running CLI commands, support console color, user interaction, progress display, data formatting display, generate bash/zsh completion add more features. Go的命令行应用,工具库,运行CLI命令,支持命令行色彩,用户交互,进度显示,数据格式化显示,生成bash/zsh命令补全脚本
color - Color package for Go (golang)