Post

I just shared with the rest of the @aspire.dev team a proof of concept for a TUI interface in the Aspire CLI. It is built with #Hex1b using a few features that I've been cooking over the weekend. This specific UX might not make it but it shows you what is possible.

Some of the other features that I've been cooking in #Hex1b. A big chunk of the weekend was building a CLI tool for Hex1b that can be used for debugging. One of the things it can do is launch terminals in the background and attach to them. You can even view them in the browser.

#Hex1b has also gotten some useful widgets that you see in more complex #tui systems like a TabPanelWidget and a TreeWidget. Here is a screenshot that shows off both. The TabPanel is quite flexible and composed of a TabBar that can be used independently and the ability to add icons to the tabs!

I've also added a windowing system including the ability to add animated backgrounds (use with caution). This leverages the same surface rendering system from the first video.

Another #hex1b widget added which I've actually build specifically for #aspire but which will be pretty useful for any .NET-based TUI is a LoggerPanel. There are a few parts of this including an extension for Microsoft.Extensions.Logging that returns a sink that can be bound to the UX.

0 reposts0 likes

Oh! One more thing ... I'm investigating building an EditorWidget. This is a big lift so it might take a while to get into main (maybe by end of week). You can have multiple editors pointed to the same logical document and they keep in sync. You can see it supports multiple cursors!

As the #Hex1b stack gets more capable I'm needing to build out the tools so that I and coding agents can debug them. That's why I build the `hex1b app tree` command to dump out stats from running TUIs widget tree