If you are not wanting a full windowing OS (just a windowing display) then https://en.wikipedia.org/wiki/Tmux may do the job for you in unix-a-like environments, with or without https://en.wikipedia.org/wiki/Byobu_(software). In fact I sometimes have several log monitoring windows open in one tmux screen, essentially a dashboard like this and you describe. Done this way all that is running is console applications: almost any existing console application can work well and there is no need for extra development to interface a new windowing API.
You could use an existing CUI/TUI library to write such a condole-based windowing system, if tmux/similar don't quite do what you are looking for. For example https://github.com/chjj/blessed if node.js is your bag. Similar libraries exist for other languages too (go, .net, ...) - search for "Terminal UI <language>" or "Console UI <language>" and options should pop up.
[0] http://urwid.org
Someone mentioned it a few months back and it greatly simplified my life. You specify your layouts (and tmux will give you the information to copy a current layout). You can then tell it what programs to run in each window of the layout.
So I have a window broken into 5 panes (as an example). The top left runs emacs (via emacsclient) and opens my ledger.org file. The other 4 show various reports I want to see: Current cleared balance, current uncleared balance, current uncleared transactions, future transactions (out to a month), and a running balance sheet across the past several months.
In another two windows I just have a shell and an emacsclient instance (because I live in emacs). Then as I come up with other things I want to see (weather information, summaries of my todos, email inbox (tally at least) I can add new window and pane configurations to my tmuxinator configuration. When I restart it, everything is back as I had it (if I put them in the config).
I haven't done as much coding at home as I'd like lately (and it's all Windows at the office). But I have a couple other tmuxinator configs that will layout several windows and panes for development. Like launch an editor, and have spaces laid out like I want for debuggers and test monitoring scripts. As appropriate to the language and task.
https://github.com/tmuxinator/tmuxinator
For the constantly refreshed display, it's mostly `watch -t <some commands>` (modifying the refresh rate if necessary. `-t` removes the title text from the top of watch so it only shows the command outputs. Which is something it took me way too many years to realize.
Command lines, on the other hand, do it natively if not intuitively.
I could argue that OSX / Ubuntu are modular and configurable and easily allow you to control data density too.
Ultimately it's obviously whatever tool makes you most productive. My comment was more of a flippant observation of the nature of human endeavour.
Ubuntu is the red-headed stepchild of Linux which wants to be Windows. I use it at work. I hate it. I'd rather use Fedora.
Eh. It wants to be Mac:
- broken alt-tab? Check
- menu bar on top? Check
- dock? Check
- window controls moved to the left? Check
> I use it at work. I hate it.
So do I. But now after they moved to Gnome I can fix the worst usabilty issues.
It still crashes hard once a day despite me trying everything I can think of wrt swap, reserved memory etc. Might just be my RAM sticks though.
> I'd rather use Fedora.
> So do I.
Forgot to remove the part about hating it. I don't hate Ubuntu at all, I just question some implementation details.
https://en.wikipedia.org/wiki/Openbox
Archbang , which uses openbox, is a good example of a distribution to try in a VM if anyone wants to see an example in action.
EDIT: Also, it's a lot easier to organize and find my way around nested tmuxes than it is to organize tons of windows. Yes: I nest tmuxes.
We could call it "emacs".