Dashboard TUI
A Return to Speed and Sanity
In a world of bloated graphical interfaces and features that get in your way, sometimes the most powerful tool is the one that is the most simple. I've spent decades working with systems, and if there's one thing I've learned, it's that your tools should be an extension of your will, not an obstacle to it. That's the philosophy behind the Dashboard TUI, a fast, simple, and powerful Text-based User Interface for managing your homelab directly from the command line.
This isn't a replacement for powerful tools like Webmin or Cockpit. It's a different kind of tool, built for a different kind of workflow. It's for the sysop who lives in the terminal, who values speed and efficiency over flashy graphics, and who wants a central, keyboard-driven launchpad for their own custom scripts and commands.
Built on a Modern, Powerful Foundation
The dashboard is built entirely in Python 3, a language I've come to appreciate for its clarity and power. It leverages a few key libraries to create a modern and robust experience:
- Textual: A fantastic framework that brings modern application design to the terminal. It handles the complex work of rendering the UI, managing focus, and handling user input, allowing us to build a "nice" interface without the overhead of a full graphical environment.
- MySQL/PyMySQL: The entire menu is data-driven. It's not hard-coded in the script; it's read directly from a MySQL database. This is a core principle of my design philosophy: separate the data from the code. This makes the dashboard incredibly easy to customize and extend without ever touching the Python source.
- Subprocess Module: The application can run any external command or script, streaming the output back to the log window in real-time. This is crucial for running long processes like system updates without freezing the entire interface.
Simple Installation, Maximum Control
Getting started is designed to be as simple as possible. The entire project is self-contained. You download the ZIP file from GitHub, run a single `install.sh` script to fetch the Python dependencies, and set up the simple MySQL table for your commands. That's it. From there, you are in complete control, adding your own scripts and tools to the menu.
About the Author
I'm not a Silicon Valley developer. I'm a lifelong tinkerer and a system administrator who has been building, breaking, and fixing computer systems since the days of the Altair 8800. My experience is grounded in decades of hands-on work, from managing radio repair shops without a formal degree to architecting my own remote-access homelab. I build tools to solve my own problems, with a focus on simplicity, control, and a deep respect for the user.
The Vision: A Suite of Tools for the Command Line
The Dashboard TUI is just the first step. My vision is to create a full suite of powerful, interconnected command-line tools that allow a system operator to manage their entire domain from a simple, efficient SSH session. In a world where technology is often hostile to the user, I believe in building tools that empower us to take back control.
Copyleft
This project, like all of my work, is free. It's free to use, free to modify, and free to share. Fork it, improve it, adapt it to your own needs. Have fun with this. That's what it's for.