Skip to main content

Minimal library for parsing CIF & mmCIF files in Python.

Project description

https://raw.githubusercontent.com/glotzerlab/parsnip/refs/heads/main/doc/source/_static/parsnip_header_dark.svg

ReadTheDocs PyPI conda-forge

parsnip is a minimal Python library for parsing CIF files. While its primary focus is on simplicity and portability, performance-oriented design choices are made where possible.

Importing parsnip allows users to read CIF 1.1 files, as well as many features from the CIF 2.0 and mmCIF formats. Creating a CifFile object provides easy access to name-value pairs, as well as loop_-delimited loops. Data entries can be extracted as python primitives or numpy arrays for further use.

Setup

parsnip may be installed with pip or from conda-forge.

Installation via pip

python -m pip install parsnip-cif

Installation via conda-forge

conda install -c conda-forge parsnip-cif

Installation from source

First, clone the repository:

git clone https://github.com/glotzerlab/parsnip.git
cd parsnip

Then, choose one of the following. While parsnip is only dependent on Numpy, additional dependencies are required to run the tests and build the docs.

pip install .            # Install with no additional dependencies
pip install .[tests]     # Install with dependencies required to run tests
pip install .[tests,doc] # Install with dependencies required to run tests and make docs

To obtain a correct set of locked dependencies, we recommend the use of the uv package manager to install from uv.lock:

uv sync --extra tests # Or --all-extras to build the documentation

Dependencies

numpy>=1.19
more-itertools

Support and Contribution

Please visit our repository on GitHub for the library source code. Any issues or bugs may be reported at our issue tracker, and tips and best practices for contributing to the project are included in the development guide. All contributions to parsnip are welcomed via pull requests!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

parsnip_cif-1.0.0.tar.gz (57.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

parsnip_cif-1.0.0-py3-none-any.whl (47.8 kB view details)

Uploaded Python 3

File details

Details for the file parsnip_cif-1.0.0.tar.gz.

File metadata

  • Download URL: parsnip_cif-1.0.0.tar.gz
  • Upload date:
  • Size: 57.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for parsnip_cif-1.0.0.tar.gz
Algorithm Hash digest
SHA256 738bed52398fddc2ef801510dde22e2f139298beffccfb59dd887ec9e7e2381c
MD5 6fa7f678e0ea4710cd173d0e1ffb7e6e
BLAKE2b-256 1b8a1e497e88b6675498039a9d5a4a493e2d192a365b34c8596a910cd5a52a39

See more details on using hashes here.

Provenance

The following attestation bundles were made for parsnip_cif-1.0.0.tar.gz:

Publisher: pypi-test-and-publish.yaml on glotzerlab/parsnip

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file parsnip_cif-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: parsnip_cif-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 47.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for parsnip_cif-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 091086da6b0bf6499c121972e4b88e4c1953ab8672b08501a5942169d083747e
MD5 da30e880e9c201a6f4fb456a91d29b52
BLAKE2b-256 3029cd367ef73ec903c47d75b521965105ae2e5f57897ff7450af8201f3a17b5

See more details on using hashes here.

Provenance

The following attestation bundles were made for parsnip_cif-1.0.0-py3-none-any.whl:

Publisher: pypi-test-and-publish.yaml on glotzerlab/parsnip

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page