The goal of this prototype was to:
The existing code for the viewer was then merged into the tabbing code with actions added for each UI element as approrpriate
ChatGPT was used to generate the HTML and Javascript UI and the a tabbed UI at the same time. Additional refinements to add in list management as well as file load and save were added afterwards. For the latter appropriate code for JSON encoding was asked for.
Below is the final prototype before integration with the rest of the viewer and additional styling. The "Material" tab would be filled in with the existing viewer's property editor.
Material editor.