Skip to main content

The Web Dashboard for SEAMM (Simulation Environment for Atomistic and Molecular Simulations).

Project description

MolSSI Dashboard (Flask-coreUI)

This application is a results Dashboard for the SEAMM project. It is built using the Flask web framework and the CoreUI template. The dashboard is designed to be used with the SEAMM Datastore.

Install the SEAMM dashboard

To install the SEAMM dashboard, it is recommended that you it install it, along with SEAMM using the installation 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 Repository

To 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, type

git clone git@github.com/YOUR_FORK/seamm_dashboard.git
cd seamm_dashboard

To create the seamm-dashboard environment and install the necessary packages, type

make environment

in the top level of your directory.

After the script is finished running, activate the SEAMM Dashboard conda environment:

conda activate seamm-dashboard

Next, do a development install of the package:

make dev-install

Installing the Datastore (Required)

For a development install, you must all install the SEAMM Datastore.

You must also install the SEAMM 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:

git clone https://github.com/molssi-seamm/seamm_datastore.git
cd seamm_datstore
pip install -e .

Run a demo dashboard

If you do not have SEAMM installed, you can view a demo dashboard by using the data in this repository. Use the command

make run-demo

Open a browser and navigate to http://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 is default.

If you would like to run the same demo dashboard in development/debug mode, use the command

make run-dev

This 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 at http://localhost:5000/.

Running with SEAMM installed

If 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.py

The dashboard can then be viewed in your browser at localhost: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 run

results_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 --initialize flag.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

seamm-dashboard-2024.3.27.tar.gz (2.7 MB view details)

Uploaded Source

Built Distribution

seamm_dashboard-2024.3.27-py2.py3-none-any.whl (2.7 MB view details)

Uploaded Python 2 Python 3

File details

Details for the file seamm-dashboard-2024.3.27.tar.gz.

File metadata

  • Download URL: seamm-dashboard-2024.3.27.tar.gz
  • Upload date:
  • Size: 2.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.19

File hashes

Hashes for seamm-dashboard-2024.3.27.tar.gz
Algorithm Hash digest
SHA256 85a132e0ea781421699a67522453e69ab64b7bce46e70dab624104d17d1aa1e9
MD5 c17475142edb158c48c5ea16443b0d83
BLAKE2b-256 8d3a8d32c76db32ba34a1a65bc1167cac4b1f605a7cb333fc4c51374f6f731e6

See more details on using hashes here.

File details

Details for the file seamm_dashboard-2024.3.27-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for seamm_dashboard-2024.3.27-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 ac2aa7b4d0f24d24cd8595c3b819687013e8564b8563f41777600701816f8328
MD5 cd1af5d686f40f79f098c09123fcf2b4
BLAKE2b-256 2bf070ec964792a83682211feafb358acc38a29c659076dae3637f891c3d82fc

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page