seekpath
A module to obtain and visualize k-vector coefficients and obtain band paths in the Brillouin zone of crystal structures
What it is and what it does
SeeK-path is a Python module that computes optimal band structure paths through the Brillouin zone for any crystal structure. It automatically detects the Bravais lattice type using spacegroup symmetry, assigns k-point labels following the HPKOT crystallographic convention, and suggests a standard band path for electronic structure calculations. The package handles systems without time-reversal or inversion symmetry correctly.
The module is designed for computational materials scientists and physicists preparing band structure calculations. It takes a crystal structure as input (typically from materials simulation software) and returns the high-symmetry k-points and recommended path, eliminating manual lookup of crystallographic conventions and reducing errors in band structure workflows.
Use it for:
- Preparing band structure calculations by automatically generating k-point paths for DFT codes like VASP or Quantum ESPRESSO.
- Identifying high-symmetry points and their labels for any crystal structure without manual crystallographic lookup.
- Standardizing band structure workflows across different research groups by applying consistent HPKOT conventions.
- Detecting and handling symmetry-breaking systems (no inversion or time-reversal symmetry) correctly in band path generation.
- Visualizing primitive cells and Brillouin zones alongside computed band paths via the online Materials Cloud tool.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
SeeK-path generates optimal k-point band paths in the Brillouin zone for crystal structures, automatically detecting Bravais lattice type and applying crystallographic conventions to label high-symmetry points.
Yes. SeeK-path is actively maintained, has no known vulnerabilities, carries a permissive MIT license, and solves a well-defined problem in computational materials science. The low install friction and minimal dependencies make it a safe addition to materials simulation workflows. Install it if you routinely prepare band structure calculations.
Install
seekpath on PyPI
pip
pip install seekpathuv
uv add seekpathpoetry
poetry add seekpathInstalling seekpath
Before you install
Low friction: pure Python wheel with only numpy and spglib as runtime dependencies. Actively maintained with recent commits and no known vulnerabilities.
License in practice
MIT license (permissive) means you can use, modify, and redistribute this package with minimal restrictions in both open-source and commercial projects.
Quickstart
pip install seekpath
import seekpath
result = seekpath.get_path(structure)
Requires a crystal structure object (typically from ASE or similar materials science library); seekpath itself does not parse structure files.
Verify before relying
- Whether the package handles non-standard or disordered crystal structures gracefully.
- Performance characteristics for large supercells or high-complexity crystal systems.
- Availability and stability of the online Materials Cloud visualization tool mentioned in the description.
Package facts
| License | not declared (permissive) |
| Python support | supports the current Python release (>=3.8) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — numpy, spglib |
| Maintenance | actively maintained — 195 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 626,149/month — #5,691 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: seekpath-2.2.1-py3-none-any.whl
Keywords: path, band structure, Brillouin, crystallography, physics, primitive cell, conventional cell
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
spglibspglib provides Python bindings to a C library…
permissive · top 5,000 on PyPI
symfcSymfc computes force constants from atomic…
unclear · top 15,000 on PyPI
pyxtalPyXtal generates crystal structures with…
permissive · top 15,000 on PyPI
moyopyMoyopy is a Python binding for Moyo, a crystal…
permissive · top 15,000 on PyPI
phonopyPhonopy calculates phonon properties and…
permissive · top 15,000 on PyPI
pystac-ext-mgrsAdds MGRS (Military Grid Reference System)…
permissive · top 5,000 on PyPI
atomate2Atomate2 provides a library of pre-built…
permissive · top 15,000 on PyPI
vasprun-xmlParses VASP calculation output from vasprun.xml…
permissive · top 15,000 on PyPI
cornerGenerates publication-quality corner plots…
permissive · top 15,000 on PyPI
periodictableProvides a periodic table of the elements with…
permissive · top 15,000 on PyPI