Skip to main content

stapler

A Hash Based Method for Matching Crosslinkers into Peptides and Proteins for PyRosetta

Installation

pip install pystapler

Theory

This protocol is developed to quickly identify pairs of residues that can accomidate disulfides given the 3D structure of a protein.

To achieve this goal, examples of 30,000 native disulfide structures were procured from the PDB, and the relative positions of the backbone atoms (N, CA, C) were calculated, hashed, and stored into a database.

Therefore, when you have a candidate protein structure and you would like to know if any residue pairs from the structure can accomidate a disulfide, you can quickly calculate all of the relative positions of backbone atoms in the protein and ask which transformations are the same as an example in the database of native examples.

The protocol is scalable/adaptable to other crosslinkers given a set of conformations of the new crosslinker. For disulfides, this was given by the PDB, but for crosslinks that do not have a native examples, the examples must be generated from scratch. Also, this protocol is not limited to sidechain-to-sidechain crosslinking. One could implement loop closure with some tweaks.

Theory Example Image

Example

import pyrosetta
pyrosetta.init()

from pyrosetta.rosetta.core.select.residue_selector import TrueResidueSelector
from pyrosetta.rosetta.core.select.residue_selector import ChainSelector

from stapler import NativeDisulfideStapler

default_residue_selectors = [TrueResidueSelector(), TrueResidueSelector()]
ab_residue_selectors = [ChainSelector('A'), ChainSelector('B')]
aa_or_ab_residue_selectors = [ChainSelector('A'), ChainSelector('A,B')]

native_disulfide_stapler = NativeDisulfideStapler(
    residue_selectors=default_residue_selectors,
    minimum_sequence_distance=4
)

pose = pyrosetta.pose_from_file('input.pdb')

for i, stapled_pose in enumerate(native_disulfide_stapler.apply(pose)):
    stapled_pose.dump_pdb(f'output_{i}.pdb')

Protein/Disulfide Example Image

Metadata

Release files for pystapler 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pystapler 1.1.0
File Size Uploaded Provenance Actions
pystapler-1.1.0.tar.gz 589.9 kB Without provenance Details for pystapler-1.1.0.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for pystapler 1.1.0
File Interpreter ABI Platform Actions
pystapler-1.1.0-py3.6.egg Legacy Egg format - - Details for pystapler-1.1.0-py3.6.egg
pystapler-1.1.0-py3-none-any.whl Python 3 none any Details for pystapler-1.1.0-py3-none-any.whl

Total release size: 1.8 MB

Release files / pystapler-1.1.0.tar.gz

Download URL pystapler-1.1.0.tar.gz
Size 589.9 kB
Tags Source
SHA-256 checksum
How to use checksums
7be3cafd08b06c31a736a74a1f8aa2817a21bc1cb370ecf650076941cef3e22c
BLAKE2b-256 checksum
How to use checksums
ef3b65861126ea30d049fc06198ae753dd4132780ccc7599c06d82d0efa618af
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/59.6.0 requests-toolbelt/0.9.1 tqdm/4.40.2 CPython/3.6.9

Release files / pystapler-1.1.0-py3.6.egg

Download URL pystapler-1.1.0-py3.6.egg
Size 625.5 kB
Tags Egg
SHA-256 checksum
How to use checksums
37bf3c87bc7a3e8fb8703e0f50c44606a13228373538af841921ed4eada61d3f
BLAKE2b-256 checksum
How to use checksums
046fa8e0f076ae6400ab0a497a03d4f27d45508a9fbbd26e2fc77b27a23687e3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/59.6.0 requests-toolbelt/0.9.1 tqdm/4.40.2 CPython/3.6.9

Release files / pystapler-1.1.0-py3-none-any.whl

Download URL pystapler-1.1.0-py3-none-any.whl
Size 621.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
37642c728697cb216fb43273c642c04fd6cf258a3558a22bf2bc6455a6845c78
BLAKE2b-256 checksum
How to use checksums
eaed627b24a229f9d63246b56f15aba4e8c10416cf8ccad5ca65684694526801
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/59.6.0 requests-toolbelt/0.9.1 tqdm/4.40.2 CPython/3.6.9

Security for pystapler 1.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page