There are options to maintain the panels content within the DOM at all times (using an approach like you mentioned with display: none) and options to remove content from the DOM.
In terms of vanilla TS the library is almost entire written in vanilla TS with small wrapper libraries for Vue and React.
In theory wrappers could be written for other frameworks such as Angular (which is something I would like to get done this year)
golden layout is the OG JavaScript layout manager, used it for many years beforehand.
Orginally yes it was inspired by some of the other layout managers, include golden layout. The main goal here was to have zero depenedencies and to be written in Vanilla TypeScript with wrapper libraries for frameworks such as Vue and React.
Any feedback is appreicated, the website demo shows most of the current capabilities and there are many more planned in the Issues list.
Most likely, touch devices are not officially supported however support is planed. Also the demo has some issues running on Safari which will be fixed.
1. Where you never want the elements DOM position to move (`always` rendering mode) and the HTMLElement is simply hidden (display: none) when not visible.
2. Where you only want the DOM element to exist when the panel is visible (`onlyWhenVisible` mode)
In the case of React the React Tree is always maintained in either mode.
This is in related to the publication of the package to npm. All of the publications are verified with provenance statements as supported by NPM directly; it's something I believe all NPM packages should be required to use but as of now it's optional; it simply provided verifiable signatures as to what was built and how it was built.