We are using a 3D Avatar generated by Ready Player Me which has been rigged with a skeleton. You can checkout the original Blender file in /dev.
Each bones are displaced to match face landmark position. It makes the flexible mask animation. To create your own flexible mask, you can reuse the skeleton and rig it to your own mask mesh.
We use an internal library called BadgerAutobones to handle autobones displacements.