Only the first three levels are hand-made (the tutorial ones, that teach how the different pieces work).
The rest are thousands of pre-generated and classified puzzles, and they are selected randomly to make each game unique.
I pre-generated them in order to make the game run smoothly. The generation and classification are very CPU-consuming.