Most of these checks and fixes operate on the structure graph, which we derive using bond heuristics implemented in pymatgen . Based on the structure graph, unbound solvent can then be identified as the connected components that do not cross the periodic boundaries. Over or undercoordination can be identified with hard-coded heuristics for common coordination environments. Based on the latter, we can also return coordinates at which hydrogen atoms would be expected. In the frontend, this is implemented at two different levels (see Figure ). First, a dedicated tab in the structure editor allows to automatically add missing hydrogens and select errors to be fixed (Figure ). Second, a final check indicates potential issues that should still be fixed (Figure ).