Mina allows for a ~21kb blockchain size today, two years from now and forever. I want to understand how this works since it almost like magic to me. Is there other software or computer technology that does this to basic file storage or something which I can play around with, study and learn about to understand Mina some more?
Can this compression be done to any file out there and help reduce the space of all data?
Mina isn’t compressing data, it uses zkSNARKs to proof that some state (the current state) is valid - 22kB-Sized Blockchain -- A Technical Reference | Mina Protocol
Is there a good visual example on how this works. If it is not compression, how does it recover the chain history?
Light client nodes don’t need to recover chain history , they use proofs which are built on previous proofs. You can have a look at this : How is Mina 22KB? | Mina Protocol - YouTube