Skip to content

moyo

A fast and robust crystal symmetry finder, written in Rust. It detects crystallographic symmetries, identifies the 230 space groups and 1651 magnetic space groups, and standardizes and symmetrizes structures.

The Web Viewer has moved

The interactive Web Viewer now lives at spglib.github.io/moyo/viewer/. Please update your bookmarks; the old root URL now serves this landing page.

Interfaces

  • Rust Rust (moyo)


    The core implementation.

    crates.io · docs.rs

  • Python Python (moyopy)


    Python binding via PyO3.

    PyPI · Docs

  • C C (moyoc)


    C binding, built and consumed with CMake.

    Docs

  • Fortran Fortran


    Fortran interface on top of the C binding.

    Docs

  • JavaScript JS / WASM (moyo-wasm)


    JavaScript and WebAssembly binding.

    npm · Docs

  • Web viewer


    Browse the 230 space groups, 80 layer groups, and 1651 magnetic space groups in your browser. Powered by moyo-wasm; no server, no analytics.

    Open the viewer

Conventions

How moyo standardizes cells, applied uniformly across the Rust core and all language bindings:

Feature support

For the per-interface feature-support matrix and the notes behind it, see the repository README.

How to cite

If you use moyo or its interfaces in your work, please cite the following figshare entry:

@misc{moyo,
  author = {Kohei Shinohara},
  title  = {{moyo: A fast and robust crystal symmetry finder, written in Rust}},
  year   = {2026},
  month  = {1},
  doi    = {10.6084/m9.figshare.31081162.v1},
  url    = {https://figshare.com/articles/software/moyo_A_fast_and_robust_crystal_symmetry_finder_written_in_Rust_/31081162},
  note   = {Source code available at \url{https://github.com/spglib/moyo}}
}

This citation may be superseded by a peer-reviewed publication in the future.