8 releases

0.1.7 Oct 20, 2020
0.1.6 Oct 19, 2020

#17 in #biology

Download history 64/week @ 2023-02-16 16/week @ 2023-02-23 14/week @ 2023-03-02 14/week @ 2023-03-09 11/week @ 2023-03-16 6/week @ 2023-03-23 12/week @ 2023-03-30 15/week @ 2023-04-06 12/week @ 2023-04-13 3/week @ 2023-04-20 20/week @ 2023-04-27 21/week @ 2023-05-04 12/week @ 2023-05-11 8/week @ 2023-05-18 16/week @ 2023-05-25 27/week @ 2023-06-01

70 downloads per month
Used in 4 crates

MIT license

7.5K SLoC

Python 5.5K SLoC // 0.0% comments Rust 2K SLoC // 0.1% comments


crates.io crates.io crates.io docs.rs

This crate provides fundamental types and data for working with protein structures.

NOTE: This crate is in early development and the API has not yet been stabilized, so do not use this crate in production. If you have any suggestions, please don't hesitate to open an issue or make a PR!



This crate aims to provide a unified framework for representing protein structural data in Rust.


The central struct provided by this crate, Structure, hold information roughly equivalent to that contained in a PDB or mmCIF file. A minimal Structure contains data that unambiguously describe the primary structure (sequences of nucleotides and/or amino acids), any secondary structure (helices and sheets) and the identity and coordinates and connectivity of all atoms in the structure assembly. It can also include Metadata as an Option.

A Structure can either be created from scratch or parsed from specialized file formats such as PDB and mmCIF. All parsers should aim to parse information into structs provided in the structure and metadata module.


Metadata are data that are not strictly required for describing the structure, such as the title, author, and experimental method. Each field in Metadata is Optional.


~62K SLoC