Documentation for Crystallography.

See the Index for the complete list of documented functions and types.

The code is hosted on GitHub, with some continuous integration services to test its validity.

This repository is created and maintained by @singularitti. You are very welcome to contribute.


The package can be installed with the Julia package manager. From the Julia REPL, type ] to enter the Pkg REPL mode and run:

pkg> add Crystallography

Or, equivalently, via the Pkg API:

julia> import Pkg; Pkg.add("Crystallography")   Resolving package versions...
    Updating `~/.julia/packages/Crystallography/f0Zun/docs/build/developers/Project.toml`
  [3bff3928] + Crystallography v0.6.0
    Updating `~/.julia/packages/Crystallography/f0Zun/docs/build/developers/Manifest.toml`
  [187b0558] + ConstructionBase v1.4.1
  [3bff3928] + Crystallography v0.6.0
  [93b1d1cd] + CrystallographyBase v0.10.0
  [4e289a0a] + EnumX v1.0.4
  [d9f16b24] + Functors v0.4.2
  [d8e11817] + MLStyle v0.4.16
  [c116f080] + Mendeleev v0.3.0
  [90137ffa] + StaticArrays v1.5.12
  [1e83bf80] + StaticArraysCore v1.4.0
  [6ec83bb0] + StructEquality v2.1.0
  [1986cc42] + Unitful v1.12.2
  [a7773ee8] + UnitfulAtomic v1.0.0
  [2f01184e] + SparseArrays
  [10745b16] + Statistics


  • STABLEdocumentation of the most recently tagged version.
  • DEVdocumentation of the in-development version.

Project status

The package is tested against, and being developed for, Julia 1.6 and above on Linux, macOS, and Windows.

Questions and contributions

Usage questions can be posted on our discussion page.

Contributions are very welcome, as are feature requests and suggestions. Please open an issue if you encounter any problems. The Contributing page has a few guidelines that should be followed when opening pull requests and contributing code.

Manual outline

Library outline