Jigsaw puzzle in JS cuz why not
Just open index.html in your browser and let the joy flow
A great deal of basic puzzle mechanics has been heartlessly stolen from here: https://code.tutsplus.com/tutorials/create-an-html5-canvas-tile-swapping-puzzle--active-10747