textual
jexer
Our great sponsors
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.
textual
-
How to format output for a stand-alone display screen? Larger numbers, colors, redrawing the screen from the top left instead of printing a new line every time?
If you are looking for something more flexible that just printing to a terminal, take a look at Asciimatics and textual. Both are available from Pypi.
-
Ratatui: Build rich terminal user interfaces
As someone that use both Python and Rust, it's hard to motivate myself to write TUI in Rust, because with Python we have the amazing textual.
- BFS for shortest path
-
Show HN: Trogon – An automatic TUI for command line apps
I would also[0] be interested in an argparse equivalent of this for my tool Library[1]
-
coBib 4.0: a modern UI using Textualize libraries
Today I released coBib 4.0, my console bibliography manager written in Python, which now uses rich and textual to provide a cohesive and modern user experience in both its CLI and TUI.
-
After tearing my hair out writing JavaScript the last few days how close are we to Python in the browser?
I don't think it is exactly what you're looking for, but Textual will be supporting something close to what I think you're after, soon. https://github.com/Textualize/textual
-
Ink: React for interactive command-line apps
For Golang there is Bubbletea [1], Textual [2] for Python and tui-rs for Rust [3].
[1] https://github.com/charmbracelet/bubbletea
-
Tried Textual to build a simple TUI - Skylab (a tool to track upcoming space launches)
I guess you looked at it a while ago because the docs are quite detailed with lots of examples.
-
How difficult is ncurses?
There are plenty of terminal UI libraries that are actually nice to work with. For Python, there's Textual and PyTermGUI. For Rust, there's ratatui and Cursive (or, if you want something a bit lower level, crosster or termion). For Go, there's bubbletea.
-
A beautiful TUI periodic table for GNU/Linux terminals (ptable) in C
Concerning your roadmap, you might wanna take some inspiration from Textual, it's a really mordern approach to TUIs. I understand that the level of abstraction is high and might be tasking to implement many of the ideas in there in C... and please fgs, don't think about doing the CSS shit.
jexer
-
Qubes Tricks
Very interesting! I was thinking literally yesterday about a TUI/GUI Qubes type concept, maybe also applicable for industrial type data diodes.
-
Show HN: Java TUI framework with sixel image support
If you code in Java, and like TUI (console type applications), then you might enjoy Jexer: https://gitlab.com/klamonte/jexer
I started Jexer in 2013, and off-and-on it's gotten better. I think my favorite part has been crossing paths with other terminal emulator ecosystem folks over the last few years. This release brings a few prettified effects inspired by other projects that you are all hopefully quite familiar with (notcurses, chafa, and vtm):
* Translucent windows, including images under/over each other and text.
* Animated/pulsing text
* Animated gifs
* A new XtermVideoPlayer example that uses ffmpeg/JavaCV to play movies inside a text-draggable window. (No audio though.)
* New button styles: round, diamond, left/right arrows. The button ends and shadows are drawn with images so specific font support is not required.
* A _much_ faster and _much_ higher quality sixel encoder.
* Different window border styles: single, double, none, and rounded corners.
* A femme theme option.
Some screenshots are posted here: https://twitter.com/AutumnMeowMeow/status/148922891703050240...
It's on maven and Sourceforge.
-
So did y'all know that SyncTERM 1.1 has sixel support? That's so cool!
A path that started in the BBS era and is currently bringing DOOM to Xterm. And ironically, there is much better support for this now than there ever was for RIPscript.
-
I'm working on a commandline app that plays videos, any feedback is welcome
I am working on making DOOM run inside sixel-supporting terminals. The data load is actually small, only 70-300 kbytes/sec. You don't need a GPU at all on the terminal end just for pixels.
Story time: when I first posted Jexer to Reddit, people were all "twin does that". No, it does not. twin does not pass vttest. twin has almost no widgets. twin does not support images at all, it does not multiplex images, it does not multihead images, and it does not play videos (a bit too slowly but still) in a text draggable/resizable window that could be part of a larger system. mpv/mplayer doesn't do those things either. In fact, the only two projects I know of that can do these kinds of tricks are Jexer and notcurses. (And notcurses is hella faster and great, and I would have used it in 2013 when I started Jexer, but it didn't exist then.)
-
Terminal Technical Resources
One way to do translucent windows. - Inspired by notcurses
-
Why are kitty and alacritty so popular? Where's the foot love?
foot is great, dnkl is great. It's so far the fastest sixel-supporting terminal I've got to test XtermDOOM on. (I run iTerm2-based images against wezterm.)
-
Display images in the terminal
It parses them, but then reduces to the 8/16 ANSI colors. Which makes translucent TUI windows not work. :(
-
I looking for a TUI liberary/framework with good aesthetics.
Jexer has almost no userbase, but is a full-fledged windowing system with advanced support for images and multiplexed terminals. Java. You might find the history doc interesting, it has quite a few links to other projects and standards. (Disclaimer: I wrote Jexer.)
What are some alternatives?
pytermgui - Python TUI framework with mouse support, modular widget system, customizable and rapid terminal markup language and more!
rich - Rich is a Python library for rich text and beautiful formatting in the terminal.
python-prompt-toolkit - Library for building powerful interactive command line applications in Python
asciimatics - A cross platform package to do curses-like operations, plus higher level APIs and widgets to create text UIs and ASCII art animations
urwid - Console user interface library for Python (official repo)
npyscreen - Automatically exported from code.google.com/p/npyscreen
bubbletea - A powerful little TUI framework 🏗
picotui - Lightweight, pure-Python Text User Interface (TUI) widget toolkit with minimal dependencies. Dedicated to the Pycopy project.
py_cui - A python library for intuitively creating CUI/TUI interfaces with widgets, inspired by gocui.
xterm.js - A terminal for the web
wtpython - Automatically find solutions when your Python code encounters an issue.