Skip to main content

logo

A Python framework for the rapid modeling of glycans

Made with Python code style - black Documentation Status Check out - Tutorials PyPI version

Built using BuildAMol Glycosylator is a Python framework for the identification, modeling and modification of glycans. Glycosylator can build atomic models of glycans and can glycosylate proteins and membranes. Glycosylator can perform conformational optimization to minimize clashes in glycosylated structures or to sample alternative conformations for individual glycans. Glycosylator supports a variety of file-formats and can work hand in hand with other libraries such as RDKit to faciliate research workflows.

Running the GUI

Streamlit

Glycosylator provides a graphical user interface in the form of a Streamlit Web Application. This app supports modeling new glycans and glycosylating proteins and memrbanes as well as modeling the shielding effect. Of course, the library itself is more versatile and some things may not be doable via the GUI. The app can be reached via glycosylator.streamlit.app or via the Open in Streamlit badge at the top. If you would like to run the app locally you clone the app's Github Repository.

Installing Glycosylator

Glycosylator is distributed via the Python Package Index and can be installed via:

pip install glycosylator

What can Glycosylator do?

Here's a list of things that you could do with Glycosylator:

  • Model new glycans

    • From IUPAC strings
    • From GlyCosmos IDs
    • Manually through fragment-based assembly
    • Create non-standard sugars by adding functional groups or other small molecule fragments
  • Modify existing glycans

    • Extend small glycans to larger ones
    • Trim large glycans to smaller ones
    • Modify individual sugar residues
    • Sample or optimize glycan conformations
    • Rename atoms/residues to conform to different forcefield conventions
  • Obtain structural data on glycans

    • Get data for angles / dihedrals
    • Get compositional data for sugar residues
  • Glycosylate Biomolecules

    • Glycosylate Proteins at specific residues or search by Sequons
    • Glycosylate Membranes at specific lipids such as Ceramide
    • Glycosylate arbitrary molecular scaffolds in pretty much any way
  • Sample or optimize glycan conformations on the surface of scaffold molecules

  • Simulate the shielding effect of glycans on scaffold molecules

Building a glycan from IUPAC

Generating an atomic model from a IUPAC glycan string can be as easy as:

import glycosylator as gl

# this is GlyCosmos entry G09568JT
iupac = "Gal(b1-4)GlcNAc(b1-2)[Gal(b1-4)GlcNAc(b1-4)]Man(a1-3)[Gal(b1-4)GlcNAc(b1-2)[Gal(b1-4)GlcNAc(b1-6)]Man(a1-6)]Man(b1-4)GlcNAc(b1-4)GlcNAc"

glycan = gl.glycan(iupac)
glycan.to_pdb("my_glycan.pdb")

glycan.show3d()

Note: This visualization was hand-made in ChimeraX from the PDB file, so the actual output of show3d will not be quite this pretty, but it will be interactive...

Glycosylating a protein

To glycosylate a protein we can use a simple snippet like the one below. Check out the tutorials in the documentation for more info on glycosylation and how to optimize a glycosylated protein afterward.

import glycosylator as gl

# get some protein scaffold
protein = gl.Protein.from_pdb("my_protein.pdb")

# get some glycan (maybe we already have one as a PDB file)
glycan = gl.Glycan.from_pdb("my_glycan.pdb")

# glycosylate the protein at N-glycosylation sites
glycoprotein = gl.glycosylate(protein, glycan, sequon="N-linked")

glycoprotein.to_pdb("my_glycoprotein.pdb")

Simulating Glycan Shielding

To simulate the shielding effect of glycans on the surface of proteins we can use the quickshield function or the GlycoShield class. These will perform torsional sampling around random subsets of edges in order to obtain a great number of conformations in a relatively short time. Here is how:

# using a previously glycosylated protein
protein = gl.Protein.load("my_glycoprotein.pkl")

# perform a quick simulation of glycan shielding
# (with very rough settings)
shield = gl.quickshield(protein, angle_step=100, repeats=1, save_conformations_to="./glycoshield_simulation")

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

License

MIT

Metadata

Release files for glycosylator 5.6.3

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

Source distribution (sdist)

Source distribution for glycosylator 5.6.3
File Size Uploaded
glycosylator-5.6.3.tar.gz 2.1 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for glycosylator 5.6.3
File Interpreter ABI Platform
glycosylator-5.6.3-py3-none-any.whl Python 3 none any Details

Total release size: 4.3 MB

Release files / glycosylator-5.6.3.tar.gz

Download URL glycosylator-5.6.3.tar.gz
Size 2.1 MB
Tags Source
SHA-256 checksum
How to use checksums
8c8533f7f015688ef7ac662ccfc2495461fd0d57dc0c498b94cd974286dfea31
BLAKE2b-256 checksum
How to use checksums
65b588a01a669f6cdd228d85d73b64248473d1eeb6a0dbe8e38a53c62d003823
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.9.19

Release files / glycosylator-5.6.3-py3-none-any.whl

Download URL glycosylator-5.6.3-py3-none-any.whl
Size 2.2 MB
Tags Python 3
SHA-256 checksum
How to use checksums
9a2bb4c7c0c8c268e46068851b44f191d989eebebb93570d15e9868c79c856e2
BLAKE2b-256 checksum
How to use checksums
07bb0633704d5b05db52fc2bc42d9425d2137764c9e5ca300842e4ff48661a1e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.9.19

Release history Release notifications | RSS feed

This release

5.6.3 This release

2 release files

4.4.0

2 release files

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