this isn't really answering your question,
however with opencascade working in webassembly here, perhaps also cadquery and/or build123d can do something like that
replicad is my personal favorite:
https://studio.replicad.xyz/workbench