Drop in two structures (CIF, POSCAR, extxyz, or pymatgen JSON). Get a relax sanity check, not a trajectory player. The four cases below show what RelaxDiff catches automatically — click any card for a full interactive report with 3D viewer, diagnosis, and narrative.

github.com/siyu-hu/relaxdiff →
Case 1 · baseline ok

MgO normal relax

What a clean relaxation looks like. Light rattle, full symmetry preserved.

Case 2 · symmetry warn

SrTiO3 octahedral tilting

Cubic perovskite → tetragonal tilted variant. Symmetry breaking, coordination shifts.

Case 3 · alert alert

Si cell collapse

Cell pressed to ~78% of its original volume. Triggers cell-collapse alert and full symmetry loss.

Case 4 · phase warn

TiO2 strained variant

Large lattice shear plus heavy rattle. Cell, bonds, and coordination all shift.

Try it on your own files

RelaxDiff is a small Python CLI. The gallery above is just the output — point it at any two structure files (CIF, POSCAR, extxyz, pymatgen JSON) and you get one of these reports.

git clone https://github.com/siyu-hu/relaxdiff && cd relaxdiff
python -m venv .venv && source .venv/bin/activate
pip install -e .
relaxdiff before.cif after.cif -o report.html
open report.html
Don't want to install anything? Open a Codespace in your browser: Open in GitHub Codespaces