All Projects → AngelRuizMoreno → Jupyter_Dock

AngelRuizMoreno / Jupyter_Dock

Licence: MIT license
Jupyter Dock is a set of Jupyter Notebooks for performing molecular docking protocols interactively, as well as visualizing, converting file formats and analyzing the results.

Programming Languages

Jupyter Notebook
11667 projects

Projects that are alternatives of or similar to Jupyter Dock

py4chemoinformatics
Python for chemoinformatics
Stars: ✭ 78 (-56.42%)
Mutual labels:  cheminformatics, drug-discovery, rdkit, drug-design
Scopy
An integrated negative design python library for desirable HTS/VS database design
Stars: ✭ 28 (-84.36%)
Mutual labels:  cheminformatics, drug-discovery, rdkit, drug-design
r3dmol
🧬 An R package for visualizing molecular data in 3D
Stars: ✭ 45 (-74.86%)
Mutual labels:  protein-structure, computational-biology, protein
cbh21-protein-solubility-challenge
Template with code & dataset for the "Structural basis for solubility in protein expression systems" challenge at the Copenhagen Bioinformatics Hackathon 2021.
Stars: ✭ 15 (-91.62%)
Mutual labels:  protein-structure, protein, drug-discovery
protwis
Protwis is the backbone of the GPCRdb. The GPCRdb contains reference data, interactive visualisation and experiment design tools for G protein-coupled receptors (GPCRs).
Stars: ✭ 20 (-88.83%)
Mutual labels:  cheminformatics, drug-discovery, drug-design
PyPLIF-HIPPOS
HIPPOS Is PyPLIF On Steroids. A Molecular Interaction Fingerprinting Tool for Docking Results of Autodock Vina and PLANTS
Stars: ✭ 15 (-91.62%)
Mutual labels:  drug-discovery, molecular-docking, autodock-vina
CANDO
Computational Analysis of Novel Drug Opportunities
Stars: ✭ 27 (-84.92%)
Mutual labels:  drug-discovery, drug-repurposing, drug-design
lightdock
Protein-protein, protein-peptide and protein-DNA docking framework based on the GSO algorithm
Stars: ✭ 110 (-38.55%)
Mutual labels:  protein-structure, protein
protein-transformer
Predicting protein structure through sequence modeling
Stars: ✭ 77 (-56.98%)
Mutual labels:  protein-structure, computational-biology
VSCoding-Sequence
VSCode Extension for interactively visualising protein structure data in the editor
Stars: ✭ 41 (-77.09%)
Mutual labels:  protein-structure, protein
screenlamp
screenlamp is a Python toolkit for hypothesis-driven virtual screening
Stars: ✭ 20 (-88.83%)
Mutual labels:  computational-biology, drug-discovery
Biopython
Official git repository for Biopython (originally converted from CVS)
Stars: ✭ 2,936 (+1540.22%)
Mutual labels:  protein-structure, protein
chembience
A Docker-based, cloudable platform for the development of chemoinformatics-centric web applications and microservices.
Stars: ✭ 41 (-77.09%)
Mutual labels:  cheminformatics, rdkit
gcWGAN
Guided Conditional Wasserstein GAN for De Novo Protein Design
Stars: ✭ 38 (-78.77%)
Mutual labels:  protein-structure, protein
deepblast
Neural Networks for Protein Sequence Alignment
Stars: ✭ 29 (-83.8%)
Mutual labels:  protein-structure, protein
SeqVec
Modelling the Language of Life - Deep Learning Protein Sequences
Stars: ✭ 74 (-58.66%)
Mutual labels:  protein-structure, protein
mmterm
View proteins and trajectories in the terminal
Stars: ✭ 87 (-51.4%)
Mutual labels:  protein-structure, protein
GLaDOS
Web Interface for ChEMBL @ EMBL-EBI
Stars: ✭ 28 (-84.36%)
Mutual labels:  cheminformatics, drug-discovery
FMol
A simplified drug discovery pipeline -- generating SMILE molecular with AlphaSMILES, predicting protein structure with AlphaFold, and checking the druggability with fpocket/Amber.
Stars: ✭ 13 (-92.74%)
Mutual labels:  protein, drug-discovery
ball
The Biochemical Algorithms Library
Stars: ✭ 64 (-64.25%)
Mutual labels:  computational-biology, drug-design

Molecular Docking integrated in Jupyter Notebooks

DOI

Description | Citation | Installation | Examples | Limitations | License

logo

Table of content

Description

Jupyter Dock is a set of Jupyter Notebooks for performing molecular docking protocols interactively, as well as visualizing, converting file formats and analyzing the results.

See Jupyter Docks in action in my personal website: chem-workflows

These notebooks are Python 3 compatible. Each protocol and Jupyter notebook has its own test folder for testing and reproducibility evaluation.

For all notebooks, the demonstration includes the use of AutoDock Vina and Ledock. When available, some alternatives are mentioned in the protocol.

The notebooks includes whole protocols for:

1. Molecular Docking

For any new user, this is a good place to start. Jupyter Docks' main stages for molecular docking, as well as all functions, methods and codes are described here along with brief explanations, hints, and warnings.

2. Virtual Screening

Interested in docking multiple ligands into a single target site? This is what you require. This protocol covers all steps from ligand preparation to docking pose visualization in the target site of interest.

3. Blind Docking

Do you want to dock multiple ligands into whole target surface and/or its pockets? This protocol demonstrates the entire process of pocket search and their use as potential organic molecule binding sites. (Documentation in progress)

4. Reverse Docking / Target fishing)

Interested in docking one or a few molecules into a set of proteins to identify the most promising target(s)? This notebook covers all of the steps required to achieve such a goal in a condensed manner, making the process seem like a walk in the park. (Documentation in progress)

5. Scaffold-based Docking

Do you want to use a molecular substructure as an anchor point for your ligands? This procedure demonstrates an approximation for running molecular docking while constraining the position of a portion of the ligand. This is especially useful for investigating novel ligands with similar structure to known binders. (In construction)

6. Covalent Docking

Is your hypothesis that your ligand can bind to the target covalently? This protocol describes how to use freely available tools to investigate the covalent binding mode of ligands to protein targets. (In construction)

7. Docking Analysis

Have you completed your docking experiments with Jupyter Dock or another approach and want to conduct a rational analysis? You've come to the right place. This notebook summarizes the most common docking analysis techniques, including score comparisons, z-score calculation between softwares, pose clustering, molecular interactions mapping, and more. (In construction)

Question about usage or troubleshooting? Please leave a comment here

Requirements

Jupyter Dock is reliant on a variety of academic software. The Jupyter Dock.yaml file contains all the tools and dependencies, but the following are some of the most noticeable:

Installation

1. Installing all dependencies one by one:

1.1. Create a conda enviroment

conda create -n Jupyter_Dock python=3.8
conda activate Jupyter_Dock

1.2. Install de dependencies

  • PyMol
conda install -c schrodinger pymol
  • py3Dmol
conda install -c conda-forge py3dmol
  • AutoDock Vina
pip install vina
  • OpenBabel (Pybel)
conda install -c conda-forge openbabel
  • Meeko
pip install meeko
  • PDBFixer
conda install -c conda-forge pdbfixer
  • ProLif, RDKit and MDAnalysis

To achieve a successful installation, the current development of ProLif necessitates a number of dependencies and steps. The quickest way to get a fully functional ProLif is to follow the steps below:

conda install rdkit cython

Make sure your system has a working GCC before beginning the ProLif installation (needed to compile MDAnalysis).

pip install git+https://github.com/chemosim-lab/ProLIF.git 
  • Smina, Fpocket,LeDock, LePro and AutoDock Tools executables are provided in the bin folder of this repo.

It is highly likely that the AutoDock Tools binaries will need to be compiled on your machine before they can be used. In this case, you must download them from https://ccsb.scripps.edu/adfr/downloads/ and then follow the installation instructions.

To address this limitation, the notebooks include the use of Smina binary as an alternative to AutoDock Vina, which offers several advantages for protein and ligand preration and formats, among other things.

2. Available as GitHub repo:

2.1. Clone the repository and create the Jupyter_Dock environment from the Jupyter_Dock.yaml file.

$git clone https://github.com/AngelRuizMoreno/Jupyter_Dock.git
$cd Jupyter_Dock
$conda env create -f Jupyter_Dock.yml

After installing the prerequisites, you can activate the conda environment and run/modify the Jupyter Notebooks.

3. GoogleColab:

Not yet available.

Limitations

Jupyter Dock's initial goal was to provide a set of pythonic protocols for molecular docking. Nonetheless, there is a dearth of docking tools in Python for all of the steps and protocols (i.e. pocket search for blind docking). Furthermore, the majority of well-known and widely used molecular docking softwares have been developed as stand-alone executables or as components of software suites. As a result, Jupyter Dock evolved into a notebook, attempting to organize and compile the tools required for the rational implementation of molecular docking.

The following are the main drawbacks of this approach:

  • The AutoDock Tools binary files "prepare_rotein" and "prepare_lgand are still missing for MacOs.

  • There is no guarantee that these jupyter notebooks will run on Windows. The alternative for these users would be to run Jupyter Dock through the Windows Subsystem for Linux (WSL)

    Actually, I built Jupyter Dock in a Xiomi Mi Laptop Air using the WSL.

  • Ubuntu 18.4 (x86 64) was used to compile the binary files for fpocket, prepare protein, and prepare ligand. As a result, they can function differently in other operating systems and architectures.

Examples

Docking powered by AutoDock Tools and LeDock

3D visualization of Docking results powered by py3Dmol

2D interaction maps powered by ProLif

Pocket search powered by Fpocket

Citation

If you use these notebooks, please credit this repository and the required tools as follows:

  1. Jupyter Dock

    Ruiz-Moreno A.J. Jupyter Dock: Molecular Docking integrated in Jupyter Notebooks. https://doi.org/10.5281/zenodo.5514956

  2. Autodock Vina

    Eberhardt, J., Santos-Martins, D., Tillack, A.F., Forli, S. (2021). AutoDock Vina 1.2.0: New Docking Methods, Expanded Force Field, and Python Bindings. Journal of Chemical Information and Modeling.

    Trott, O., & Olson, A. J. (2010). AutoDock Vina: improving the speed and accuracy of docking with a new scoring function, efficient optimization, and multithreading. Journal of computational chemistry, 31(2), 455-461.

  3. LeDock

    Wang Z, Sun H, Yao X, Li D, Xu L, Li Y, et al. Comprehensive evaluation of ten docking programs on a diverse set of protein–ligand complexes: the prediction accuracy of sampling power and scoring power. Phys Chem Chem Phys. 2016;18: 12964–12975. https://doi.org/10.1039/C6CP01555G.

  4. AutoDock Tools

    Morris, G. M., Huey, R., Lindstrom, W., Sanner, M. F., Belew, R. K., Goodsell, D. S., & Olson, A. J. (2009). AutoDock4 and AutoDockTools4: Automated docking with selective receptor flexibility. Journal of computational chemistry, 30(16), 2785–2791. https://doi.org/10.1002/jcc.21256.

  5. Pymol API

    The PyMOL Molecular Graphics System, Version 1.2r3pre, Schrödinger, LLC.

  6. OpenBabel

    O'Boyle, N.M., Banck, M., James, C.A. et al. Open Babel: An open chemical toolbox. J Cheminform 3, 33 (2011). https://doi.org/10.1186/1758-2946-3-33.

  7. RDKit

    RDKit: Open-source cheminformatics; http://www.rdkit.org

  8. py3Dmol

    Keshavan Seshadri, Peng Liu, and David Ryan Koes. Journal of Chemical Education 2020 97 (10), 3872-3876. https://doi.org/10.1021/acs.jchemed.0c00579.

  9. PDBFixer

    P. Eastman, M. S. Friedrichs, J. D. Chodera, R. J. Radmer, C. M. Bruns, J. P. Ku, K. A. Beauchamp, T. J. Lane, L.-P. Wang, D. Shukla, T. Tye, M. Houston, T. Stich, C. Klein, M. R. Shirts, and V. S. Pande. 2013. OpenMM 4: A Reusable, Extensible, Hardware Independent Library for High Performance Molecular Simulation. Journal of Chemical Theory and Computation. ACS Publications. 9(1): 461-469.

  10. MDAnalysis

    R. J. Gowers, M. Linke, J. Barnoud, T. J. E. Reddy, M. N. Melo, S. L. Seyler, D. L. Dotson, J. Domanski, S. Buchoux, I. M. Kenney, and O. Beckstein. MDAnalysis: A Python package for the rapid analysis of molecular dynamics simulations. In S. Benthall and S. Rostrup, editors, Proceedings of the 15th Python in Science Conference, pages 98-105, Austin, TX, 2016. SciPy, doi:10.25080/majora-629e541a-00e.

    N. Michaud-Agrawal, E. J. Denning, T. B. Woolf, and O. Beckstein. MDAnalysis: A Toolkit for the Analysis of Molecular Dynamics Simulations. J. Comput. Chem. 32 (2011), 2319-2327, doi:10.1002/jcc.21787. PMCID:PMC3144279.

  11. ProLif

    chemosim-lab/ProLIF: v0.3.3 - 2021-06-11.https://doi.org/10.5281/zenodo.4386984.

  12. Fpocket

    Le Guilloux, V., Schmidtke, P. & Tuffery, P. Fpocket: An open source platform for ligand pocket detection. BMC Bioinformatics 10, 168 (2009). https://doi.org/10.1186/1471-2105-10-168.

  13. Smina

    Koes, D. R., Baumgartner, M. P., & Camacho, C. J. (2013). Lessons learned in empirical scoring with smina from the CSAR 2011 benchmarking exercise. Journal of chemical information and modeling, 53(8), 1893–1904. https://doi.org/10.1021/ci300604z

License

These notebooks are under MIT, see the LICENSE file for details.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].