This is a funny gift I made for my old friend’s birthday.

The idea is simple: as long a side of the smallest QR-code is 21 pixels wide, we could divide such code evenly into 9 squares 7x7 pixels each. Each one of such small squares corresponds to one small square on the side of a Rubik’s cube. Thus, it’s possible to construct a full Rubik’s cube from 6 QR-codes. I had to use as a basis the largest Rubik’s cube available on eBay to guarantee its readability.

Six different QR-codes contain birthday greetings in six different languages.
I shuffled the cube before gluing up the parts of codes in order to prevent the color-based easy solution. However, it’s still possible to solve the cube analytically based on the knowledge of QR-code structure.

Here is a photo with my cat just to illustrate the scale: