I've been kicking this rock down the road for far too long and this week I finally took some time to sit down and try to wrap my brain around WebGL.
Currently all Doka animations are handled with CSS 3D transforms. This is super fast as the view is almost never redrawn and everything is handled by the GPU (composition only). Turns out this doesn't work great (~40 FPS) on Chrome when browsing on a high-res retina Macbook.
Running the whole image preview layer on the GPU would allow faster effects and would fix the above problem. So, bit the bullet, replaced the view layer, and my brain is finally starting to "get" WebGL. I'm now finishing up the new release and ironing out the final couple of bugs, the results are very promising so far.