A Cytsocape.js extension to provide a framework for grid interactions such as grid lines and snapping to grid, and guidelines and snap support for alignment of nodes.
I think the guidelines would be more usable (better user experience) if
a node is not aligned (no guidelines are drawn for) with a node which overlaps this one (e.g. two nodes whose bounds are are currently overlapping or a child node with its parent node)
a node is not aligned with a node which is too far from it (more than 5 times the ideal edge length or default average node size?)
Checking whether two nodes overlap is slightly costly (we need to get positions and dimensions of each nodes and do overlap check for each sides). Also a normal user would not try to put two nodes on top of each other.
Guidelines is not shown when a node is aligned with its parent.
Range options for both alignment types are implemented in unstable version.
I think the guidelines would be more usable (better user experience) if