refactor(ui): always display the buttons bar
[e-mobility-charging-stations-simulator.git] / ui / web / README.md
index 1f5fdd3341e76793fbf8a842dcf418cc2525e90c..5546785219de47963e494ad9b9d26c98465e5539 100644 (file)
@@ -4,14 +4,6 @@ The Web UI code and configuration is in the repository directory [ui/web](./../.
 
 ## Project setup
 
-### Dependencies
-
-```shell
-corepack enable
-corepack prepare pnpm@latest --activate
-pnpm install
-```
-
 ### Configuration
 
 #### Simulator UI Server Configuration
@@ -23,8 +15,8 @@ The simulator UI server must be enabled, use WebSocket transport type and have a
     "enabled": true,
     "type": "ws",
     "authentication": {
-      "enabled": false,
-      "type": "basic-auth",
+      "enabled": true,
+      "type": "protocol-basic-auth",
       "username": "admin",
       "password": "admin"
     }
@@ -35,36 +27,77 @@ See [here](./../../README.md#charging-stations-simulator-configuration) for more
 
 #### Web UI configuration
 
-Copy the configuration template [src/assets/config-template.ts](src/assets/config-template.ts) to `src/assets/config.ts`.
-
-### Run
+Copy the configuration template [src/assets/config-template.json](./src/assets/config-template.json) to `public/config.json`.
 
-#### Compiles for production
+##### Unique UI server:
 
-```shell
-pnpm build
+```json
+{
+  "uiServer": {
+    "host": "localhost",
+    "port": 8080,
+    "protocol": "ui",
+    "version": "0.0.1",
+    "authentication": {
+      "enabled": true,
+      "type": "protocol-basic-auth",
+      "username": "admin",
+      "password": "admin"
+    }
+  }
+}
 ```
 
-#### Compiles and preview locally for production
+##### Multiple UI servers:
 
-```shell
-pnpm preview
+```json
+{
+  "uiServer": [
+    {
+      "host": "server1.domain.tld",
+      "port": 8080,
+      "protocol": "ui",
+      "version": "0.0.1",
+      "authentication": {
+        "enabled": true,
+        "type": "protocol-basic-auth",
+        "username": "admin",
+        "password": "admin"
+      }
+    },
+    ...
+    {
+      "host": "serverN.domain.tld",
+      "port": 8080,
+      "protocol": "ui",
+      "version": "0.0.1",
+      "authentication": {
+        "enabled": true,
+        "type": "protocol-basic-auth",
+        "username": "admin",
+        "password": "admin"
+      }
+    }
+  ]
+}
 ```
 
-#### Compiles and run for production
+### Run
+
+#### Compiles for production and preview locally
 
 ```shell
-pnpm start
+pnpm preview
 ```
 
 #### Try it out
 
-For both options above you can then follow the link displayed in the terminal at the end of compilation. The Web UI looks like the following
+You can now follow the link displayed in the terminal. The Web UI looks like the following:
 
-![webui](./assets/webui.png)
+![webui](./src/assets/webui.png)
 
-1. With the top 2 buttons you can now stop and afterwards start the simulator and inspect the server console for the number of charging stations, e.g. with the default configuration: `Charging stations simulator ... started with 10 charging station(s)`
-2. Each charging station is a row in the table below, try "Stop Charging Station" and refresh with the large blue button and see the status Started turns from Yes into No.
+1. With the buttons on the top you can change UI server, start/stop the simulator, add new charging stations and refresh the content.
+2. Each charging station is a row in the table with specific 'Actions' to execute on. Try 'Stop Charging Station' and refresh with the large blue button and see the status 'Started' turns from 'Yes' into 'No'.
 
 ### Development