Definitively Not( James )

2021/02/16


Have you ever wanted to make an interface for a program, but realized web just isn’t for you? Don’t want to delve into the madness and incantations needed to utilize new curses?


There’s a new blog post by Will McGugan about his Python library Rich, used to create beautiful CLIs. The blog post details some basic creation of dashboards using the various APIs available through Rich. Having written a few things with ncurses, I can safely say that this is a much more pleasant experience.


But what about folks over in javascript land? Heck, while I love Python I also adore Javascript.


Check out blessed, blessed-contrib, and react-blessed. Blessed is a Javascript library to create CLIs, but you’ll notice that the react API it has is really game changing. Using a special blessed renderer in React you can create CLI interfaces with the same paradigms as any React 16 application. Combine that with the contrib package and you can have real time terminal dashboards that show graphs, maps, spark lines, markdown, and even picture rendering.


It’s one thing to show off your cool new graphical web app. It’s another entirely to show off your 100% hacker terminal app.