HTML5/DOM interface for C++ and WebAssembly
work in progress (well it is unlikely I will finish it).
By having the entire DOM Interface wrapped in C++ one could write a full webpage in only C++. This will would also make static analysis very easy, as that comes for free with clang
and gcc
.
The HTML, DOM, and CSSOM specifications have all the interfaces specified in WebIDL.
This can be scraped from the specification pages [1, 2, 3] using webidl-extract
. W3C has a parser for this format called webidl2
which can be used to turn it into a JSON
format, see ./webidl
. From this JSON
structure one could automatically generate C++ (header and code) which wraps emscripten::val
.