Edit: limiting it to square flips was a great idea. There are just enough moves to make the answer non-obvious (after lvl 15), but not so many possible moves that you get overwhelmed.
---
Edit 2: I just remembered I made a similar "game"[1], where you select columns to XOR with other columns and try to reach the target pattern. Use the scroll wheel and shift+wheel to change the pattern and size.
That was actually part of a real research project in optimizing circuits for computing binary finite fields, where the "game" was a sandbox to try different algorithms. The best algorithm was actually found by someone playing in this sandbox and coming up with an efficient strategy.