To use more modern design practices, the GUI is being migrated to a component based architecture (via React).
Typescript is being used to create tighter contracts with the backend, hopefully reducing the likelihood of changes to server dto's silently breaking the GUI.
ES6 is being used to get some nice modern features (arrow syntax)...
Some modifications to the initial design were made (see the third commit) for the sake of performance. They were necessary to avoid rendering the entire component tree with every status message (several times per second).
:book: Summary
Migrating the GUI to Typescript + React + ES6.
:mag: Details
To use more modern design practices, the GUI is being migrated to a component based architecture (via React).
Typescript is being used to create tighter contracts with the backend, hopefully reducing the likelihood of changes to server dto's silently breaking the GUI.
ES6 is being used to get some nice modern features (arrow syntax)...
Some modifications to the initial design were made (see the third commit) for the sake of performance. They were necessary to avoid rendering the entire component tree with every status message (several times per second).
Installation/Setup
:heavy_check_mark: Testing
:heavy_check_mark: Verification