A* with JavaScript. Your browser does not support the HTML5 canvas tag.

Hold Shift to draw walls.
Hold Ctrl to delete walls.
Click to set a start point.
Click again to set a target point.
If there is no possible path, the source and target node will be respectively colored red and blue.