Try clicking inside the square. Each click adds a site and updates the Voronoi diagram to reflect that. A Voronoi diagram partitions space according to which "site" is the closest.

The data structure used is a doubly-connected edge list, which represents each edge as to connected half-edges, which is what the arrows on the edges are. Each half-edge is linked to a next and previous edge, as well as its twin half-edge. Half-edges always go clockwise around their edge, so they will wrap CCW around the insides of polygons, and clockwise around the outermost square. Vertices and faces are also linked to the appropriate edges.

You can mouse over each half-edge, and its next, previous, and twin edges will be highlighted. You can also look at the connections between vertices, faces, and edges. The textbox below the diagram gives a representation of the currently selected element, showing its id, coordinates (for faces and vertices), and connections to other elements.

View on Github

This is built from v0.1 of the project.