Developed an advanced data visualization and informational dashboard building tool. The system includes a WYSIWYG editor and a viewer that allow the user to easily create information dashboards and connect live data sources to them. The editor and the viewer are based on the source code of draw.io project and are enhanced with multiple custom features:
- Added the API to allow extention of the UI with React components (as opposed to draw.io’s manual DOM manipulation).
- Ability to render arbitrary custom HTML (with template variables supported to display the live data) and run custom javascript with everything properly sandboxed and secured.
- Built-in HTML and javascript editor for advanced users.
A custom visual DSL (based on Google Blockly) and ability to write complex conditions to enable conditional formatting and visual effects based on real time live data.
Technology and libraries used in the frontend:
A lot of plain javascript because draw.io doesn't have any dependencies and only uses plain javascript for DOM manipulation (lots of createElementNS and appendChild ).



