Do everything in serverside cgi programs, at least until WebAssembly disposes of the currently necessary JS wrappers to access the DOM.