https://github.com/bsc-es/autosubmit-gui

The Autosubmit Graphical User Interface (GUI) is the web-based Autosubmit frontend, allowing users to discover, monitor, and analyze experiments. It is based on ReactJS and relies on the Autosubmit API as the middleware to get experiment information.

https://github.com/bsc-es/autosubmit-gui

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: joss.theoj.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (20.1%) to scientific vocabulary

Keywords

autosubmit experiment gui react workflow
Last synced: 5 months ago · JSON representation

Repository

The Autosubmit Graphical User Interface (GUI) is the web-based Autosubmit frontend, allowing users to discover, monitor, and analyze experiments. It is based on ReactJS and relies on the Autosubmit API as the middleware to get experiment information.

Basic Info
Statistics
  • Stars: 5
  • Watchers: 5
  • Forks: 1
  • Open Issues: 59
  • Releases: 8
Topics
autosubmit experiment gui react workflow
Created over 1 year ago · Last pushed 6 months ago
Metadata Files
Readme Changelog License

README.md

Autosubmit GUI

status codecov

Table of Contents

  1. Overview
  2. Installation
  3. Testing
  4. User Guide
  5. Contributing

Overview:

Autosubmit GUI is a front-end software developed using ReactJS as the main framework This front-end software consumes most of the information it needs from Autosubmit API, an API that retrieves information from an internal file system and databases that result from the execution experiments under Autosubmit on a High Performance Computing environment.

These two systems, the API and the GUI, are independent. It is possible to replace Autosubmit API for another API that provides similar information. For that purpose, we provide with response examples (more details in the installation section) that can help the developer understand how the information is used in the components of the GUI. Furthermore, you can review the Autosubmit API repository to learn more about the API and find the current list of available requests.

Full documentation: https://autosubmit-gui.readthedocs.io/en/latest/

Installation

NOTE This project has been created by using Vite, so it is important to check its documentation to do changes on its deployment process.

First, clone the repository:

git clone https://github.com/BSC-ES/autosubmit-gui

Then, check if you are using the right recommended Node.js version of this project to be sure there is no conflict in its dependencies. This could be easily done by using the Node Version Manager using:

nvm use

Install the needed dependencies using the Node Package Manager:

npm install

It's important that you configure this project before using it by using Enviroment variables. This can be easily done by creating a .env file on the project root directory.

Here is an example content of a .env file:

bash REACT_APP_AUTOSUBMIT_API_SOURCE=https://earth.bsc.es/autosubmitapi

You can check the full list of the configuration variables here: https://autosubmit-gui.readthedocs.io/en/latest/configuration/index.html

NOTE If you want to have different sets of .env files for different purposes (production, development, testing, etc), refer to the Vite's Enviroment variables documentation.

Now you are able to run the GUI locally using:

npm start

Or build the project bundle by doing:

npm run build

Furthermore, if you want to set up it for production, please refere to the Vite's Building for Production documentation.

Testing

The testing have been developed using Cypress.

To start running the e2e and component tests you have to configure and run the GUI. Follow the installation guide above if needed.

Then, you have to write a .env.cypress with the URL of your GUI and API like this:

bash CYPRESS_BASE_URL=http://localhost:3000/ CYPRESS_EXTERNAL_API=http://127.0.0.1:8000

Once done, you can run the tests by running npm run cy:run or interactively using npm run cy:open.

User Guide

A user guide has been developed and published at https://autosubmit-gui.readthedocs.io/en/latest/userguide/index.html

We are constantly working on updating it considering the latest features.

Contributing

Currently, the development of this software is under the Autosubmit team that belongs to the Earth Science Department of the Barcelona Supercomputing Center.

You can open issues in this repository using the Email a new issue to this project function, since user creation is currently restricted to only BSC members. Most issues have been centralized in the Autosubmit repository, and you can check them there.

You are free (and encouraged) to clone this software and modify it to fit your needs. Moreover, the BSC is always looking for collaboration, so feel free to request support.

Owner

  • Name: Earth Sciences Department
  • Login: BSC-ES
  • Kind: organization
  • Location: Barcelona, Spain

Barcelona Supercomputing Center

GitHub Events

Total
  • Create event: 144
  • Issues event: 187
  • Release event: 7
  • Watch event: 5
  • Delete event: 125
  • Issue comment event: 1,766
  • Push event: 146
  • Pull request review comment event: 13
  • Pull request review event: 64
  • Pull request event: 257
  • Fork event: 2
Last Year
  • Create event: 144
  • Issues event: 187
  • Release event: 7
  • Watch event: 5
  • Delete event: 125
  • Issue comment event: 1,766
  • Push event: 146
  • Pull request review comment event: 13
  • Pull request review event: 64
  • Pull request event: 257
  • Fork event: 2

Issues and Pull Requests

Last synced: 5 months ago

All Time
  • Total issues: 263
  • Total pull requests: 173
  • Average time to close issues: almost 2 years
  • Average time to close pull requests: 4 months
  • Total issue authors: 11
  • Total pull request authors: 5
  • Average comments per issue: 4.57
  • Average comments per pull request: 1.72
  • Merged pull requests: 48
  • Bot issues: 1
  • Bot pull requests: 113
Past Year
  • Issues: 39
  • Pull requests: 147
  • Average time to close issues: 24 days
  • Average time to close pull requests: 6 days
  • Issue authors: 11
  • Pull request authors: 4
  • Average comments per issue: 0.9
  • Average comments per pull request: 0.99
  • Merged pull requests: 48
  • Bot issues: 1
  • Bot pull requests: 113
Top Authors
Issue Authors
  • kinow (131)
  • LuiggiTenorioK (120)
  • ialsina (2)
  • mcastril (2)
  • MissterP (2)
  • abaer-kit (1)
  • orioltinto (1)
  • ainagaya (1)
  • dependabot[bot] (1)
  • dbeltrankyl (1)
  • agarci3 (1)
Pull Request Authors
  • dependabot[bot] (113)
  • LuiggiTenorioK (45)
  • kinow (12)
  • MissterP (2)
  • ainagaya (1)
Top Labels
Issue Labels
gitlab merge request (38) testing (34) bug (28) working on (18) new feature (17) discussion (14) to do (12) enhancement (5) advertisement (5) question (2) dependencies (1) documentation (1)
Pull Request Labels
dependencies (112) gitlab merge request (6) new feature (5) testing (4) working on (2) bug (2) discussion (2) advertisement (1)

Dependencies

package-lock.json npm
  • 1536 dependencies
package.json npm
  • @babel/plugin-proposal-class-properties ^7.12.1 development
  • @babel/plugin-proposal-private-property-in-object ^7.21.11 development
  • @babel/plugin-transform-modules-commonjs ^7.23.3 development
  • @cypress/code-coverage ^3.12.22 development
  • @cypress/instrument-cra ^1.4.0 development
  • babel-plugin-istanbul ^6.1.1 development
  • canvas ^2.11.2 development
  • cypress ^13.6.4 development
  • dotenv ^16.4.5 development
  • eslint ^8.55.0 development
  • eslint-plugin-jsdoc ^48.2.3 development
  • eslint-plugin-react ^7.33.2 development
  • eslint-plugin-react-hooks ^4.6.0 development
  • eslint-plugin-react-refresh ^0.4.5 development
  • identity-obj-proxy ^3.0.0 development
  • jest-canvas-mock ^2.5.2 development
  • react-dev-utils ^12.0.1 development
  • react-test-renderer ^18.2.0 development
  • source-map-explorer ^2.5.3 development
  • tailwindcss ^3.4.1 development
  • @fortawesome/fontawesome-free ^6.5.1
  • @headlessui/react ^1.7.18
  • @radix-ui/react-collapsible ^1.0.3
  • @radix-ui/react-dialog ^1.0.5
  • @radix-ui/react-dropdown-menu ^2.0.6
  • @radix-ui/react-progress ^1.0.3
  • @radix-ui/react-tooltip ^1.0.7
  • @reduxjs/toolkit ^2.0.1
  • @uidotdev/usehooks ^2.4.1
  • axios ^1.6.2
  • clsx ^2.1.0
  • cytoscape ^3.28.1
  • d3 ^7.8.5
  • dateformat ^5.0.3
  • framer-motion ^11.0.5
  • jquery ^3.7.1
  • jquery.fancytree ^2.38.3
  • react ^18.2.0
  • react-copy-to-clipboard ^5.1.0
  • react-cytoscapejs ^2.0.0
  • react-desktop-notification ^1.0.9
  • react-dom ^18.2.0
  • react-google-charts ^4.0.1
  • react-hook-form ^7.51.2
  • react-redux ^9.0.4
  • react-router-dom ^6.21.0
  • react-scripts ^5.0.1
  • react-scroll ^1.9.0
  • sass ^1.69.5
  • showdown ^2.1.0
  • tailwind-merge ^2.2.1
  • uuid ^9.0.1
docs/requirements.txt pypi
  • livereload *
  • pydata-sphinx-theme ==0.15.
  • sphinx ==5.
  • sphinx-autobuild ==2021.3.
  • sphinx-reredirects ==0.1.
  • sphinx_rtd_theme *