Skimming over it it doesn’t look like there’s anything preventing it from being ported over.
The vertex shader portion doesn’t do anything, which is good since construct doesn’t let you modify that anyways.
The fragment shader has a bunch of uniforms: floats and vec2s which can be two floats.
The rest would depend on if GLSL is the same for webgl and OpenGL. So there may be a need for some fiddling.