OpenWaterFoundation / owf-app-dev-ng

Open Water Foundation Angular application to develop common libraries
0 stars 1 forks source link

dashboard - add generic dashboard feature #31

Closed smalers closed 2 years ago

smalers commented 2 years ago

It would be useful to have a generic dashboard capability. Below is an example from Esri ArcGIS. This is high priority because it could meet some upcoming requirements.

The idea is to provide one or more InfoMapper content pages that would have a type of "dashboard". An immediate need is the new Poudre Information Page that will show the status of the basin, using input JSON files and web services to provide the information.

The following are technical considerations:

  1. The dashboard would need to be described with a JSON file, with design to be determined. The main concepts are layout, components/widgets, and properties. Some properties will be "built in" and others will be free form.
  2. Layout is important. Usually dashboards can have the option of single column, multi-column, grid layout, or free-form layout. I am familiar with Java's GridBagLayout, which provides a lot of flexibility and of course there is JavaScript flex.
  3. The list of components/widgets is pretty standard as shown below and we have flexibility to leverage visualization code that we have done, and add more.
  4. Components/widgets could be charting tools provided by Angular/Material, third-party, or things we develop.

image

smalers commented 2 years ago

You are probably looking at marketing materials. Google for the following and see the top few pages:

arcgis online dashboard layout documentation

For example:

https://doc.arcgis.com/en/dashboards/get-started/what-is-a-dashboard.htm

smalers commented 2 years ago

Here is another Esri example that is relevant.

image

Nightsphere commented 2 years ago

The initial dashboard implementation commit has been merged and pushed. I forgot to link this issue in the commit message, but the commit can be found here.

I will close this issue, and new issues can be created for future widgets and other issues pertaining to further dashboard development.