Skip to main content

A Python CLI program to run [CASTpFold](https://cfold.bme.uic.edu/castpfold/) code from the command line

Project description

CASTpFoldpy

A Python script to run CASTpFold code from the command line.

About

CASTpFold (expanded as Computer Atlas of Surface Topography of the universe of protein Folds) is an online tool used for finding surface pockets and internal cavities in proteins which are possibly active sites for ligand binding.

Please note that the CASTpFold analysis is done in the webserver provided by bme.uic.edu and this script is intended to run only from CLI, instead of accessing the website.

The script will take few seconds to run. An initial time delay of 10 seconds is added to avoid sending frequent requests to the website.

The maximum file size to upload is 2 MB.

Installation

Install castpfoldpy from PyPi using the command

pip install castpfoldpy

Instructions to run

  • For help text, run :

    python castp.py -h

Operation modes

This script allows to submit, download results separately as well as altogether using different modes.

  • Submit only: uploads a PDB and prints the job id; no ZIP download and no pocket computation is performed in this mode.
  • Download only: downloads a result ZIP using an existing job id; no submission is performed.
  • Submit and download: uploads a PDB and then downloads the result ZIP.

Arguments

  • -p, --pdb: Protein file path in PDB format. Required for --submit-only or --submit-download.
  • -j, --jobid: CASTpFold job ID to download (required for --download-only).
  • -d, --directory: Directory to save the CASTpFold ZIP and extracted files.
  • -r, --radius: Probe radius (Å) between 0.0 and 5.0 (default: 1.4).
  • -pc, --pocket: If set, compute pocket coordinates and write CSV/TXT file.
  • -w, --wait: Initial wait time (seconds) before the first download attempt (default: 20).
  • -ew, --extra-wait: Extra wait time (seconds) before retrying when ZIP is not yet ready (default: 30).
  • -t, --retries: Number of extra download retries after extra-wait period (default: 1).
  • --email: Optional email passed to server. If provided, CASTpFold will send the download link to the email address. Default is "N/A".

Examples

  1. Download Only (-do, --download-only):

Download the results if the job ID is available. Requires --job-id argument.

python castp.py --download-only -j <JOB_ID> -d /path/to/output
  1. Submit Only (-so, --submit-only):

Uploads the PDB and prints the job ID. Results won't be downloaded. Requires --pdb argument.

python castp.py --submit-only -p path/to/protein.pdb
  1. Submit and Download (-sd, --submit-download): Uploads the PDB and then downloads the results. Requires --pdb argument.
python castp.py --submit-download -p path/to/protein.pdb -d /path/to/output --pocket
  • If the code run successfully, output files will be generated in the output folder provided.
  • Output consists of:
    • Area and volume information.
    • Image of protein structure
    • Active sites and their information.
    • Protein sequence.

Citations

Appreciate your citations if you are using this tool for your research purpose. Please cite the original CASTpFold paper along with this software.

Plain Text format

Athul R T (Sahya Digital Conservation Foundation). CASTpFoldpy: Commandline tool to access CASTpFold server. Version 3.0, 2025. Repository: https://github.com/athulvis/castp-Script. DOI: 10.5281/zenodo.17292401

Ye, B., Tian, W., Wang, B., and Liang, J. (2024). CASTpFold: Computed Atlas of Surface Topography of the universe of protein Folds. Nucleic Acids Research, 52(W1), W194–W199. https://doi.org/10.1093/nar/gkae415.

BIBTEX format

@software{CASTpFoldpy_zenodo_17292401,
  title        = {CASTpFoldpy : Commandline tool to access CASTpFold server},
  author       = {R T, Athul},
  year         = {2025},
  organization = {Sahya Digital Conservation Foundation},
  url          = {https://github.com/athulvis/castp-Script},
  doi          = {10.5281/zenodo.17292401},
  version      = {3.0},
  note         = {If you use this software, please cite it using the metadata from this file.},
}

@article{Ye2024CASTpFold,
author  = {Ye, Bowei and Tian, Wei and Wang, Boshen and Liang, Jie},
title   = {CASTpFold: Computed Atlas of Surface Topography of the universe of protein Folds},
journal = {Nucleic Acids Research},
volume  = {52},
number  = {W1},
pages   = {W194--W199},
year    = {2024},
doi     = {10.1093/nar/gkae415},
url     = {https://doi.org/10.1093/nar/gkae415}
}

References

  • Ye, B., Tian, W., Wang, B., & Liang, J. (2024). CASTpFold: Computed Atlas of Surface Topography of the universe of protein Folds. Nucleic Acids Research, 52(W1), W194–W199. https://doi.org/10.1093/nar/gkae415

  • Fermi, G., & Perutz, M. F. (1984). THE CRYSTAL STRUCTURE OF HUMAN DEOXYHAEMOGLOBIN AT 1.74 ANGSTROMS RESOLUTION [Dataset]. In Worldwide Protein Data Bank. Worldwide Protein Data Bank. https://doi.org/10.2210/pdb4hhb/pdb

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

castpfoldpy-0.1.1.tar.gz (21.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

castpfoldpy-0.1.1-py3-none-any.whl (20.8 kB view details)

Uploaded Python 3

File details

Details for the file castpfoldpy-0.1.1.tar.gz.

File metadata

  • Download URL: castpfoldpy-0.1.1.tar.gz
  • Upload date:
  • Size: 21.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.0

File hashes

Hashes for castpfoldpy-0.1.1.tar.gz
Algorithm Hash digest
SHA256 d3391e31f9bafd37b6ddd039396d4d44bac8954e59316be63ec747d07525d9e7
MD5 16b7446d91883049c7258729ea01d29f
BLAKE2b-256 f1061184f802003acf2a1bfe08591f55423fea457efda1a0913e793a9048f4d7

See more details on using hashes here.

File details

Details for the file castpfoldpy-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for castpfoldpy-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 019631caef4f83905f8aea68f695d2be4257bff863b9494be4aa291f8a783f35
MD5 4cbe5650927d2577610aa078554aeb84
BLAKE2b-256 93714fa10bff8ce17b7b968db4b85e122dcaf23c1a08505f5bf9a3beac742102

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page