Show HN: Gotui – a modern Go terminal dashboard library

github.com

45 points by carsenk 3 days ago

I’ve been working on gotui, a modern fork of the unmaintained termui, rebuilt on top of tcell for TrueColor, mouse support, and proper resize handling. It keeps the simple termui-style API, but adds a bunch of new widgets (charts, gauges, world map, etc.), nicer visuals (collapsed borders, rounded corners), and input components for building real dashboards and tools. Under the hood the renderer’s been reworked for much better performance, and I’d love feedback on what’s missing for you to use it in production.

biomcgary 3 days ago

The Readme for a UI library benefits enormously from screenshots, even terminal based UIs.

  • keyle 3 days ago

    I second that, even better would be if every type chart would be a folder, with a readme containing a screenshot and the code example. That would be top notch.

    PS: looks great on the surface!

    • carsenk 3 days ago

      Next updates will include better docs and many screenshots/examples, thanks!

  • carsenk 3 days ago

    Screenshots added for all widgets :) Flex layouts were added too!

unsnap_biceps 3 days ago

As a FYI, you removed the original author's name from your license information. Per the MIT license, you need to preserve their copyright in your fork

  • porridgeraisin 3 days ago

    Genuinely curious. Do you actually open the license file on all repos posted to HN?

    • unsnap_biceps 2 days ago

      Not every one, but if it looks like something I might use, I do take a quick look at it and any upstream it came from. It keeps me from using something when I shouldn't and have to rip it out later.

  • carsenk 3 days ago

    Will fix, thanks

smaughk 2 days ago

This project has made me think about more about the difference between TUI's and "command-line" (CLI) apps as categories. Traditionally CLIs were kind of run-and-exit tools, and "real" TUIs were long-running, stateful apps, but what we're creating seems to sit somewhere in between the to.

With richer terminals and libraries like this, the distinction feels more about interaction style than environment. Curious how others think about that boundary when designing tools that work in terminals.

Evidlo 2 days ago

Think tabs widget would look better if it was more like a text area in appearance. Tab title should be connected to its content.

  • carsenk 2 days ago

    Agreed, tabs widget needs work, I will try to get into the next release! Thanks!

tigranbs 3 days ago

It is interesting that suddenly the Terminal UI became popular. I am super happy to see this kind of thing pop up.