How would i make a Numberlink (Flow) puzzle on a SurfaceGui?

Hello! I wanted to know how to make a Numberlink (Flow) puzzle game on a SurfaceGui, but i cannot find the proper resources to make them and a generator that generates solvable puzzles.

Like I said, I cannot seem to find any resources to make numberlink puzzles that i understand, nor could I find any resources on how to make the line dragging function on a SurfaceGui.

I cannot Seem to find any resources regarding my problem on and off the devforum, it just seems too specific for any place I search.

I have already made the grid system for the puzzle game, and I just need to know how to apply that to what I want to make.

If anyone is able to help, it would be greatly appreciated, thanks!