A simple Sudoku generator and interactive display.
The generator makes a random solution, then randomly tries to remove a remaining square. If it can remove it while still allowing only a unique solution, then the cell will be cleared. A typical puzzle will have 30-50 cells filled in.