Crystal structure in · chemical diagram out
From CIF to diagram, flattened.
CIFlat reads the CIF of a metal complex and writes an editable two-dimensional chemical diagram. It completes the molecule by symmetry, resolves disorder, and works out the bonds, charges and oxidation states. The diagram comes as CDXML that opens in ChemDraw, with MOL, SMILES, SVG and PNG files and a report of every choice it made.
- .cdxml
- .mol
- .smi
- .svg
- .png
- report.json
- The CIF. The file lists only the asymmetric unit: one copper atom, one 2,2′-biimidazole and one water molecule.
- Completed by symmetry. A twofold axis generates the other half. The two copper atoms, 2.596 Å apart, are bonded.
- Inside CIFlat. Bond orders, hydrogens, charges and oxidation states are derived from the coordinates: copper(I), a 2+ cation.
- Layout. Hydrogens fold into their atoms, rings become regular, and the twofold symmetry is kept on the page.
- Out. An editable diagram, here with status
ready; the long Cu–OH2 contacts are dotted.
Real data, not an illustration: the 3D positions are those of COD 2224481 as read from its CIF, and the 2D positions are CIFlat's own drawing (version 0.6.0). The sulfate counter-ion is drawn as a separate fragment and is left out here.
What it does with a CIF
- 01
Read
Cell, symmetry operators, atom sites, occupancies and disorder labels.
- 02
Complete
Chooses among disordered positions, generates symmetry images and bonds atoms by distance.
- 03
Perceive
Bond orders, hydrogen atoms, ligand charges and metal oxidation states. The deposited formula is used only as a check.
- 04
Lay out
A search for coordinates that obey stated drawing rules, judged by an independent validator.
- 05
Check
The written files are read back and compared, and the result is marked ready, needs_review or invalid.
Drawn by CIFlat, unedited
More in the interpretive cases →



Tested on structures it had never seen
Validation →240 structures of 33 metals were drawn at random from the Crystallography Open Database and kept out of development.
drawn with exactly the deposited non-hydrogen formula; every other difference is traced to named sites or to the file.
of the metal–ligand bonds listed by the depositors are drawn.
drawings free of overlapping labels and obscured bonds.
charge-neutral as read. Charges are the weakest part; see Limitations.
Read further
Getting started
The web app, the command line, batch mode, the Python API, and what the outputs and report contain.
Start →How it works
Symmetry, disorder, polymers, metal–ligand bonds, charges, checks and the layout search.
Read →Interpretive cases
Ten situations in which a CIF must be interpreted rather than transcribed, each with its convention and an example.
Read →Limitations
What CIFlat gets wrong, including known wrong readings, stated plainly.
Read →