Package: seamm-dashboard
MolSSI Dashboard (Flask-coreUI)This application is a results Dashboard for theSEAMMproject. It is built using theFlaskweb framework and theCoreUItemplate. The dashboard is designed to be used with theSEAMM Datastore.Install the SEAMM dashboardTo install the SEAMM dashboard, it is recommended that you it install it, along with SEAMM using theinstallation instructions.The SEAMM installation tutorial will walk you through installing and running the SEAMM dashboard. If you are interested in developing the SEAMM dashboard, you can install it from this repository using the directions below.Development Install from this RepositoryTo install the dashboard for development, you should first fork this repository to your own GitHub account. Then clone the forked repository to your computer. For example, if you are using SSH, typegitclonegit@github.com/YOUR_FORK/seamm_dashboard.gitcdseamm_dashboardTo create theseamm-dashboardenvironment and install the necessary packages, typemakeenvironmentin the top level of your directory.After the script is finished running, activate the SEAMM Dashboard conda environment:condaactivateseamm-dashboardNext, do a development install of the package:makedev-installInstalling the Datastore (Required)For a development install, you must all install the SEAMM Datastore.You must also install theSEAMM Datastore. This is the package that manages the database connection. If you are developing for SEAMM, you might find it useful to install the SEAMM Datastore in development mode. To do this, clone the repository and install it in development mode:gitclonehttps://github.com/molssi-seamm/seamm_datastore.gitcdseamm_datstore
pipinstall-e.Run a demo dashboardIf you do not have SEAMM installed, you can view a demo dashboard by using the data in this repository. Use the commandmakerun-demoOpen a browser and navigate tohttp://localhost:5505/to  view the sample dashboard. Running the sample dashboard will create a user in the database with the same username you use on your computer the default password isdefault.If you would like to run the same demo dashboard in development/debug mode, use the commandmakerun-devThis will run the demo dashboard in debug mode, which will allow you to make changes to the code and see the changes reflected in the dashboard. Note that the dashboard will restart when you make changes to the code.
The development dashboard will be available athttp://localhost:5000/.Running with SEAMM installedIf you have SEAMM installed, you can connect to your seamm datastore. In the top level of the repository, type the following command into the terminal:results_dashboard.pyThe dashboard can then be viewed in your browser atlocalhost:5000. By default, the dashboard uses the location of the datastore in ~/.seamm/seamm.ini to locate the datastore to display. This can, however, be overridden by a command line argument--datastore xxxx. There are other options available. For more information runresults_dashboard.py --help

usage: results_dashboard.py [-h] [--dashboard-configfile DASHBOARD_CONFIGFILE] [--datastore DATASTORE] [--initialize] [--no-check]
                            [--log-level {CRITICAL,ERROR,WARNING,INFO,DEBUG,NOTSET}] [--console-log-level {CRITICAL,ERROR,WARNING,INFO,DEBUG,NOTSET}] [--log_dir LOG_DIR]
...
optional arguments:
  -h, --help            show this help message and exit
  --dashboard-configfile DASHBOARD_CONFIGFILE
                        a configuration file to override others (default: None)
  --datastore DATASTORE
                        The datastore (directory). [env var: SEAMM_DATASTORE] (default: .)
  --initialize          initialize, or reinitialize, from the job files [env var: INITIALIZE] (default: False)
  --no-check            do not check that jobs are in the database [env var: NO_CHECK] (default: False)
  --log-level {CRITICAL,ERROR,WARNING,INFO,DEBUG,NOTSET}
                        the logging level for the dashboard [env var: LOG_LEVEL] (default: INFO)
...By default, if the database does not exist, it will be initialized from the job files in the datastore. Otherwise, the dashboard will scan the job files on startup and add any missing ones to the database. You can prevent this initial check with--nocheck. Similarly, if you wish to force the database to be recreated from scratch, use the--initializeflag.