Terminal Dashboard
I am documenting my terminal dashboard that I cobbled together because I get a lot of inquiries about how I did it on the fediverse. This won't be a thorough tutorial to replicate it because it is very hacky and specific to my own needs. It is a general overview with a little bit of detail on the different tools and scripts I'm using to point the curious to. Hopefully, it will inspire someone else to have a little fun in their terminal. Suggestions for improvements to my setup are also welcome. Just hit me up on the fediverse @kelbot@retro.social.
Terminal Dashboard Screenshot
Layout
Everything is running in a terminal emulator inside tmux. To achieve automatically replicating the entire layout and programs running in each pane I used tmuxp which takes a simple yaml (or json) formatted config file to define the details of the tmux session you want to launch.
tmux
tmuxp
Panes
Also known as the boxes that contain the various pieces of information on the dashboard.
- top left: tty-clock
- right of the clock: cal (using watch to update it so the highlighted day is accurate)
- below clock: wttr.in (a curl command that returns the current weather conditions and watch to update it regularly)
- right of weather: shell script using calendar-cli to query my nextcloud task list (watch to refresh periodically)
- bottom left: shell script using calendar-cli to query my nextcloud calendar (watch to refresh periodically)
- below todo: sampler querying a daily count of unique visitors to my gemini capsule
- below gemini chart: shell script checking whether my servers are reachable (watch to continually check connectivity status)
- top right: tui_launcher buttons that send commands to my music server (works with keyboard, mouse and touchscreen)
- bottom right: sampler displaying music info and memory, cpu and battery status
tty-clock
cal man page
wttr.in
calendar-cli
sampler
tui_launcher
back to Terminal