{"slug": "lip-gloss", "name": "Lip Gloss", "category": "dev-libs", "category_name": "Libraries and frameworks", "description": "", "recommenders": 5, "commenters": 10, "warners": 0, "score": 5.77, "rising": -1.64, "first": "2025-12-30", "latest": "2026-08-02", "why": "bubbletea and lipgloss (and wish, if you want SSH stuff) are really excellent tools", "why_is_quote": true, "has_verdict": false, "sentiment": {"recommend": 5, "neutral": 5, "compare": 0, "warn": 0}, "spark": [0, 0, 0, 0, 2, 0, 0, 2, 1, 0, 0, 0], "listed": true, "loved": [], "caveat": "", "short_quote": "bubbletea and lipgloss (and wish, if you want SSH stuff) are really excellent tools", "kind": "", "icon": true, "domain": null, "github_repo": "github.com/charmbracelet/lipgloss", "official_url": "https://github.com/charmbracelet/lipgloss", "pricing": "", "aliases": ["Lip Gloss", "Lipgloss"], "verdict": null, "praise": [{"label": "", "summary": "", "quotes": [{"id": 784478288, "item_id": 49029893, "url": "https://news.ycombinator.com/item?id=49029893", "by": "bewuethr", "date": "2026-07-23", "version": null, "stance": "recommend", "quote": "lipgloss is pretty close", "excerpt": "lipgloss is pretty close: https://github.com/charmbracelet/lipgloss", "context": "", "use_case": "TUI styling", "switched_from": "", "story": "98.css"}, {"id": 773891569, "item_id": 48368223, "url": "https://news.ycombinator.com/item?id=48368223", "by": "dogas", "date": "2026-06-02", "version": null, "stance": "recommend", "quote": "TUI libraries like Lipgloss and Bubbletea really allow users to build a rich experience nowadays.", "excerpt": "I've been making a modern Slack terminal client (https://github.com/gammons/slk) and it's been a joy to use daily. There are a few things that IMO have unlocked a fantastic TUI experience: - TUI libraries like Lipgloss and Bubbletea really allow users to build a rich experience nowadays. Really anything from https://charm.land is well-polished and a joy to use. - Kitty image format works great and allows for Avatars,", "context": "", "use_case": "", "switched_from": "", "story": "strace-ui, Bonsai_term, and the TUI renaissance"}, {"id": 756354257, "item_id": 47272141, "url": "https://news.ycombinator.com/item?id=47272141", "by": "Chmouel", "date": "2026-03-05", "version": null, "stance": "recommend", "quote": "they finally fixed the isssue where row could not be \"lipglossed\"/colored as before", "excerpt": "i migrated my tui (lazyworktree) to it and it's been absolute pleasure, they finally fixed the isssue where row could not be \"lipglossed\"/colored as before (like on screenshots here https://chmouel.github.io/lazyworktree/#screenshots)", "context": "", "use_case": "", "switched_from": "", "story": "The next generations of Bubble Tea, Lip Gloss, and Bubbles are available now"}, {"id": 756327505, "item_id": 47270469, "url": "https://news.ycombinator.com/item?id=47270469", "by": "eieio", "date": "2026-03-05", "version": null, "stance": "recommend", "quote": "bubbletea and lipgloss (and wish, if you want SSH stuff) are really excellent tools", "excerpt": "I'm so excited about this! And I expect the speed/bandwidth improvements in the new renderer to be very significant. I spent a while hacking on my own fork of the Bubbletea renderer over the last few months in order to run a game over SSH[1]. It was a ton of work for a niche, simple game (snake) but it dropped bandwidth usage by a factor of 10. The new renderer has to be more general so it might not quite hit that fo", "context": "", "use_case": "Terminal styling", "switched_from": "", "story": "The next generations of Bubble Tea, Lip Gloss, and Bubbles are available now"}]}], "caveats": [], "who": [], "tags": [], "use_cases": ["tui styling", "terminal styling"], "compared": [{"slug": "bubble-tea", "name": "Bubble Tea", "co": 7, "switched_from": 0, "switched_to": 0}, {"slug": "wish", "name": "Wish", "co": 2, "switched_from": 0, "switched_to": 0}, {"slug": "kitty", "name": "Kitty", "co": 2, "switched_from": 0, "switched_to": 0}], "makers": [], "threads": [{"url": "https://news.ycombinator.com/item?id=47268662", "title": "The next generations of Bubble Tea, Lip Gloss, and Bubbles are available now", "mentions": 3}, {"url": "https://news.ycombinator.com/item?id=48365904", "title": "strace-ui, Bonsai_term, and the TUI renaissance", "mentions": 2}, {"url": "https://news.ycombinator.com/item?id=49149805", "title": "Show HN: ssh ssh.place", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=49028927", "title": "98.css", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47138688", "title": "Release v2.0.0 \u00b7 Charmbracelet/Bubbletea", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=46675092", "title": "Show HN: AWS-doctor \u2013 A terminal-based AWS health check and cost optimizer in Go", "mentions": 1}], "sentiment_by_month": {"2025-11": {}, "2025-12": {"neutral": 1}, "2026-01": {"neutral": 1}, "2026-02": {"neutral": 1}, "2026-03": {"neutral": 1, "recommend": 2}, "2026-04": {}, "2026-05": {}, "2026-06": {"recommend": 2}, "2026-07": {"recommend": 1}, "2026-08": {"neutral": 1}, "2026-09": {}, "2026-10": {}}, "versions": [], "version_unnamed": 0, "quotes": [{"id": 786411636, "item_id": 49150727, "url": "https://news.ycombinator.com/item?id=49150727", "by": "jeninh", "date": "2026-08-02", "version": null, "stance": "neutral", "quote": "My code uses wish, bubbletea and lipgloss from Charm.", "excerpt": "I'm going to be so honest, I don't have much advice for you. I'm a teenager who's part of Hack Club (https://hackclub.com) who made this entirely for fun. I was inspired by @zachlatta's SSHtron (https://github.com/zachlatta/sshtron) and wanted to make an SSH game. I loved how easy it was for him to promote it too, he made a HN post with title \"ssh sshtron.zachlatta.com\" because it gets people to try out the actual ga", "context": "", "use_case": "Terminal styling", "switched_from": "", "story": "Show HN: ssh ssh.place"}, {"id": 784478288, "item_id": 49029893, "url": "https://news.ycombinator.com/item?id=49029893", "by": "bewuethr", "date": "2026-07-23", "version": null, "stance": "recommend", "quote": "lipgloss is pretty close", "excerpt": "lipgloss is pretty close: https://github.com/charmbracelet/lipgloss", "context": "", "use_case": "TUI styling", "switched_from": "", "story": "98.css"}, {"id": 773925921, "item_id": 48370370, "url": "https://news.ycombinator.com/item?id=48370370", "by": "neomantra", "date": "2026-06-02", "version": null, "stance": "recommend", "quote": "", "excerpt": "I really enjoy using Golang to make TUIs and the Charm ecosystem. > But I think we will swing back to using GUIs I've been pushing on BubbleTea Kitty and Ghostty quite a bit to hybridize this. The TUI / GUI distinction to me is about task centrism and delivery. There's an appropriate surface and workflow for every task; beyond TUI/GUI sometime it needs to be a VR headset or an immersive room or a literal sandbox. A d", "context": "", "use_case": "TUI styling", "switched_from": "", "story": "strace-ui, Bonsai_term, and the TUI renaissance"}, {"id": 773891569, "item_id": 48368223, "url": "https://news.ycombinator.com/item?id=48368223", "by": "dogas", "date": "2026-06-02", "version": null, "stance": "recommend", "quote": "TUI libraries like Lipgloss and Bubbletea really allow users to build a rich experience nowadays.", "excerpt": "I've been making a modern Slack terminal client (https://github.com/gammons/slk) and it's been a joy to use daily. There are a few things that IMO have unlocked a fantastic TUI experience: - TUI libraries like Lipgloss and Bubbletea really allow users to build a rich experience nowadays. Really anything from https://charm.land is well-polished and a joy to use. - Kitty image format works great and allows for Avatars,", "context": "", "use_case": "", "switched_from": "", "story": "strace-ui, Bonsai_term, and the TUI renaissance"}, {"id": 756354257, "item_id": 47272141, "url": "https://news.ycombinator.com/item?id=47272141", "by": "Chmouel", "date": "2026-03-05", "version": null, "stance": "recommend", "quote": "they finally fixed the isssue where row could not be \"lipglossed\"/colored as before", "excerpt": "i migrated my tui (lazyworktree) to it and it's been absolute pleasure, they finally fixed the isssue where row could not be \"lipglossed\"/colored as before (like on screenshots here https://chmouel.github.io/lazyworktree/#screenshots)", "context": "", "use_case": "", "switched_from": "", "story": "The next generations of Bubble Tea, Lip Gloss, and Bubbles are available now"}, {"id": 756327505, "item_id": 47270469, "url": "https://news.ycombinator.com/item?id=47270469", "by": "eieio", "date": "2026-03-05", "version": null, "stance": "recommend", "quote": "bubbletea and lipgloss (and wish, if you want SSH stuff) are really excellent tools", "excerpt": "I'm so excited about this! And I expect the speed/bandwidth improvements in the new renderer to be very significant. I spent a while hacking on my own fork of the Bubbletea renderer over the last few months in order to run a game over SSH[1]. It was a ton of work for a niche, simple game (snake) but it dropped bandwidth usage by a factor of 10. The new renderer has to be more general so it might not quite hit that fo", "context": "", "use_case": "Terminal styling", "switched_from": "", "story": "The next generations of Bubble Tea, Lip Gloss, and Bubbles are available now"}, {"id": 756306162, "item_id": 47269135, "url": "https://news.ycombinator.com/item?id=47269135", "by": "joshka", "date": "2026-03-05", "version": null, "stance": "neutral", "quote": "https://github.com/charmbracelet/lipgloss", "excerpt": "Go libraries for making terminal UIs - https://github.com/charmbracelet/bubbletea - https://github.com/charmbracelet/bubbles - https://github.com/charmbracelet/lipgloss", "context": "", "use_case": "", "switched_from": "", "story": "The next generations of Bubble Tea, Lip Gloss, and Bubbles are available now"}, {"id": 754219025, "item_id": 47138689, "url": "https://news.ycombinator.com/item?id=47138689", "by": "pekim", "date": "2026-02-24", "version": null, "stance": "neutral", "quote": "The companion libraries lipgloss[1] and bubbles[2] have also had v2 releases.", "excerpt": "I noticed that Bubble Tea v2 [0] has been released. It looks like a great improvement all round over 1.x. The companion libraries lipgloss[1] and bubbles[2] have also had v2 releases. [0] https://github.com/charmbracelet/bubbletea/releases/tag/v2.0.0 [1] https://github.com/charmbracelet/lipgloss/releases/tag/v2.0.0 [2] https://github.com/charmbracelet/bubbles/releases/tag/v2.0.0", "context": "", "use_case": "TUI styling", "switched_from": "", "story": "Release v2.0.0 \u00b7 Charmbracelet/Bubbletea"}, {"id": 746855632, "item_id": 46678477, "url": "https://news.ycombinator.com/item?id=46678477", "by": "leetrout", "date": "2026-01-19", "version": null, "stance": "neutral", "quote": "They are using charm bracelet lip gloss", "excerpt": "They are using charm bracelet lip gloss and some others. https://github.com/charmbracelet/lipgloss", "context": "", "use_case": "", "switched_from": "", "story": "Show HN: AWS-doctor \u2013 A terminal-based AWS health check and cost optimizer in Go"}, {"id": 743007152, "item_id": 46437947, "url": "https://news.ycombinator.com/item?id=46437947", "by": "marcoroth", "date": "2025-12-30", "version": null, "stance": "neutral", "quote": "this is what lipgloss is trying to be/solve", "excerpt": "I guess, to a degree, this is what lipgloss is trying to be/solve: https://github.com/marcoroth/lipgloss-ruby", "context": "", "use_case": "", "switched_from": "", "story": "Charm Ruby \u2013 Glamorous Terminal Libraries for Ruby"}]}