--- Welcome to COSU Manager! ---

To get started, it is highly recommended to open a default config file to get an example and build an understanding of how information is formatted.

--- Header ---

The header contains many important controls. To get started, click the "Load" button to load a default config and enter an HTTP endpoint to the service that you will be using. The refresh button can be used to make a connection with the service and verify that it is available. The next element of the header is the mode selector. The mode selector is one of the most important features of COSU Manager and will be used to execute an entire workflow. You will notice that whenever you switch modes the entire content of COSU Manager changes depending on which mode you are in, don't worry, data is unique to each mode and not lost which modes are switched. The overall workflow of COSU Manager starts with Sampling (Halton or Random), then next to Sensitivity Analysis, and finally Optimization using Multigroup Particle Swarm Optimization. Each of of those modes you will interact with the four main tabs of the application: Platform, Setup, Results, and Project.

--- Platform Tab ---

The platform tab consists of 3 primary editors: Service Parameters, Service Status, and Minikube Environment Editor. The Service Parameters editor allow you to define attributes for the service such as timeouts and retry attempts. All of these parameters will be used when executing a step of the workflow and invoked at the service in the header. The Service Status editor is purely read-only and is used to view information returned from the service. This can be used to verify that the correct endpoint is being used and that the service is available. Service Status is populated whenever the refresh button in the header is clicked.

The final editor is the Minikube Environment Editor. This tool is used to deploy a local Minikube environment of any of the workflow services. This editor can be used to start Minikube, deploy the service of the selected mode, view the status of the service, and stop Minikube. After creating the Minikube service the endpoint can be filled into the endpoint prompt in the header to use COSU Manager in the exact same way as a externally hosted service. Minikube can be used as a testing environment before creating a cloud deployment.

--- Setup Tab ---

The Setup Tab is the most advanced tab and will be used to define all of the parameters used in each of the workflow modes. In all modes, the right sidebar can be used to define Model Parameters and Hyperparameters. The values here depend on the mode, but both of these editors allow for various parameters to be defined. These editors support a variety of data types including strings, floats, integers, dates, and booleans. The editor will adapt the UI and show the appropriate editor depending on the data type (e.g. dates will have a date picker, booleans a True/False dropdown, or a textbox for strings).

The second editor is the Group Editor. In Optimization you will be able to define multiple groups while all other modes only support a single group. The Group Editor includes options to create new groups, delete them, rearrange their order, expand/contract them, and overwrite global parameters defined in the sidebar. In each group you can define Bounds and Objective Functions. Each group has a variety of bounds and objective functions and all of their details can be defined here. Bounds can be imported from CSV files or edited in the interface. The Bounds editor will provide information about each parameter from the service in tooltips and notify when a parameter is outside the recommended bound by highlighting them in Red. 

--- Results Tab ---


--- Project Tab ---

