Part of it would be done on a shader (mainly the visual portion, like the glowing and whatnot) but I think most of the effect would need to be done on the CPU.
You might be able to make it work with clever usage of geometry or tesselation shaders though, and maybe also transform feedback.
Honestly though, since the effect necessitates simple, low-poly geometry, doing the effect on the CPU shouldn't be too unreasonable, and would be where I would start.
EDIT: Actually, now that I look closer, the one on the right here[0] could be done more reasonably in a shader, I was thinking closer to the one on the left (and how it actually looks in the video).
You might be able to make it work with clever usage of geometry or tesselation shaders though, and maybe also transform feedback.
Honestly though, since the effect necessitates simple, low-poly geometry, doing the effect on the CPU shouldn't be too unreasonable, and would be where I would start.
EDIT: Actually, now that I look closer, the one on the right here[0] could be done more reasonably in a shader, I was thinking closer to the one on the left (and how it actually looks in the video).
[0]: hhttp://www.lofibucket.com/articles/img/speed_comparison.jpg