See the npm package fclone for a decent deep clone implementation. (disclosure, it was shake n bake, and I helped).
https://www.npmjs.com/package/fclone
I think I commented along these lines in the original post... I don't mean to be discouraging, only that from a developer perspective there are so many choices. As to the deluge of options, I'm coming at this with 24 years of web application development experience.
Here is one major issue, and that is you pretty much have to click through from the landing page, to the docs, to the playground to have anything resembling a complete code sample for beginners, this should be front and center.
My issue specifically with frameworks like this is that it doesn't get you closer to either the html dom or to a component structure. The playground example is almost a component example with Form etc... just hard to flow. Also, at least from the example, you cannot segment state use... each child component needs to know about the state as a whole, you cannot pass part of the state, bind event handlers or bubble up/down the portion of state and handlers to the child.
Similar alternatives include using hyperapp with a separate state manager... There's also svelte, riot and preact to consider.
Beyond even this, you can go a very long way with template strings.
isotope seems like it might be useful if you want a dynamic piece in a larger site, without much overhead (size is probably the biggest selling point). Although, I think trying to build anything significant with this would fall apart pretty quickly.
Would be very cool if this is done with a charting component that doesn't bring in > 1mb of JS framework (uncompressed) to draw the chart alone... but hey.
Hmm...
<div class="card">
vs.
<div class="w-1/4 mx-auto flex p-6 bg-white rounded-lg shadow-xl">
Which one is much less complicated and less code again?
Seems to be a smaller implementation for the MongoDB BSON data format.
Here's an article going over this and some competing formats.
https://yuhui-lin.github.io/blog/2017/08/01/serialization
edit: If this is for an API response structure, than you may want to also consider GRPC as a protocol (uses protobuf3)
It's worth noting, that this application does not use 12-factor[1] principles in general. There are no unit tests, and some Dockerfile or better yet a Docker compose file would be helpful in getting started with local development.
Aside: seems to be a SaaS provider for this service, unsure how much different the commercial offering is from the source offering.
1. https://12factor.net/
Decent rant in terms of where the divide between a website and a web application are... it's a bit muddled.
Personally, I build web based applications... some of them have been public facing, many have been internal. Some have been training simulations. In the end, what this has been comes down to what you're trying to do.
If you are dealing with mostly static content, I would favor using markdown docs and templates. For interactivity, I would suggest loading JS as a module and use the browser support.
If you are building an application, I reach for React + @material-ui/core + redux + parcel ... It's a combination of tools that makes it easier to build applications. Not everything needs to be a web application.