how to make a rotating hypercube with texts attached to each face? (gif attached)
I Think you can do it with bones:

Create a cube, give it this inner geometry (I've hidden the 6 outer faces):



Create an armature with one bone by horizontal face. Parent the cube With Empty Groups to the armature, it automatically create as many vertex groups as bones, assign each face to the vertex group that has the name of the bone that is supposed to move it:



Move and scale the bones so that they follow what happens in your video:




and so on... which gives:


For the image texture, you need to create an image with 20 squares, each with its text, then select your object in Edit mode, unwrap with the Smart UV Project option, in the UV Editor, select all and UV &gt; Pack Islands, then rearrange all the UV islands so that they match the squares.