Web-based UI

Home

UI Mockup

Design Goals

The UI is designed to be portable, easy to use, and familiar to users.

To achieve the goal of portability, we decided to use a web-based frontend for the UI. This allows users to get to their information just using their web-browser of choice, and requires no investment in porting the UI code to platform specific distributions.

One of the main design points of the application is the distributed nature of the monitoring, so we took inspiration from the Kubernetes Dashboard with regard to the host table. The hosts will be listed along the bottom of the UI as seen above. The checkboxes will allow users to select which hosts they’d like to see data for on the main display on the top half of the UI. Overlaying different hosts data will be done different lines on the main line chart. This will allow users to easily compare data across multiple hosts. Each row in the hosts table will also display information about the host, such as uptime, current state, and a small graphic with utilization data.

The top half of the UI is inspired by the Microsoft Task Manager. This UI is highly effective and familiar to most users. The tabs on the left of the screen allow users to switch between the different metrics, containing a small thumbnail preview of the data, while the main chart will display that data over time.

Features

Selectable Metrics

Overlay of Multi-Host Data

Host Table

Implementation Details

Page Layout

Charts Implementation

Accessibility and Globalization

Globalization Concerns

Accessibility Concerns

Libraries and Depdenencies

BokehJS

https://docs.bokeh.org/en/latest/docs/dev_guide/bokehjs.html

Bootstrap4

https://getbootstrap.com/docs/4.4/getting-started/introduction/