Docking tools and scaffold libs for Targeting SARS-CoV-2 Receptor Binding Domain and Main Protease with D-peptides
This repository is the source code and tutorial for Targeting SARS-CoV-2 Receptor Binding Domain and Main Protease with D-peptides, including curved helical scaffold library generation and D-peptide docking program. If you have any questions, feel free to discuss in Issues.

Note: Ubuntu 20.04 is recommended.
git clone https://github.com/laiyii/D-peptide-binder-design.git .
vim ~/.bashrc
export DPEP="/path/to/D-peptide-binder-design/source_code"
source ~/.bashrcYou can generate scaffolds with customized needs.
gcc $DPEP/curved_lib/script/PhiPsi2Helix.c -o $DPEP/curved_lib/script/PhiPsi2Helix -lmRunning PhiPsi2Helix to generate scaffolds with given parameters:
chmod +x $DPEP/curved_lib/script/curl_helix_gen.sh
$DPEP/curved_lib/script/curl_helix_gen.sh -outdir <output_directory> -len <length> -paramlist <csv_file>where -outdir defines the output directory, -len is the length of the polyALA sequence. Range of other parameters are defined in <csv_file> (see $DPEP/curled_lib/script/input_params.csv), and output pdb file is named as H_<len>_<phi0>_<delphi>_<psi0>_<delpsi>_<phase>.pdb.
We also provide helix scaffold library at various lengths (28 aa and 35 aa) already generated in this work. Click here (extraction code: 14kv) to download.
Before docking, please flip your target segment to D-type, with residue names unchanged. Note that input file type should be a pdb file with hydrogens removed.
chmod +x $DPEP/docking/mirror_target/mirror_target.sh
$DPEP/docking/mirror_target/mirror_target.sh -i your_input_file.pdb -o your_output_file.pdbThe default output of -o is your_input_file_mirror.pdb
You can fit scaffolds to extracted D- reference helical segment.
gcc $DPEP/docking/ScaffoldFitting/FitequationD.c -o $DPEP/docking/ScaffoldFitting/FitequationD -lmRunning FitequationD to generate fitted scaffolds:
$DPEP/docking/ScaffoldFitting/FitequationD [Dhelixtemplate.pdb] [fitted_output.pdb] [startResidueForFit default:0]where Dhelixtemplate.pdb refers to the flipped target segment, fitted_output.pdb is the file name for fitted results. 'startResidueForFit' defines the start residue for fitting.
Before docking, please flip your target to D-type as mentioned above.
To generate grid scores, we need to define surface atoms (with atom-wise SASA larger than 1 Ų).
./naccess your_input_file_mirror.pdbNote: For usage of naccess, see Naccess homepage.
With the asa file, we will edit the target structure file at column 70. Surface atoms are marked as 1, while internal atoms are 0:
python3 $DPEP/docking/mirror_target/surf_protein.py -i_asa mono_mirror_noh.asa -i your_input_file_mirror.pdb -o your_input_file_mirror_surf.pdb-i_asa is the output file of Naccess.
Compile the file first.
gcc $DPEP/docking/HelixScaffoldDocking/HelixScaffoldDocking_batch.c -o $DPEP/docking/HelixScaffoldDocking/HelixScaffoldDocking_batch -lmRunning the program with:
chmod +x ./$DPEP/docking/HelixScaffoldDocking/HSD_batch.sh
./$DPEP/docking/HelixScaffoldDocking/HSD_batch.sh -t target_processed.pdb -b batch_info -a central_atom_idDocking tasks are performed in batch. The input options include:
-tProcessed target structure.-bA text file containing input scaffolds location and output file names.-aAtom ID, the ID of atom as the center of docking box.
Here's an example for batch_info:
$DPEP/docking/HelixScaffoldDocking/batch_info_example
The input scaffold file and output file are separated by spaces.
We provide information of helix ligand-protein complex database in $DPEP/database/Hlig_protein_database.csv, which contains PDBID, residue numbers of helical ligands and fitting results.
This project is licensed under the MIT License - see the LICENSE file for details.
This design procedure involves multiple softwares related to protein design. We acknowledge and thank the developers of Naccess, Rosetta, gromacs, gmx_MMPBSA, AggreScan and PASTA2.0 for their incredible and hard work.