Skip to main content

Python client for SynGlue

Project description

git clone https://github.com/the-ahuja-lab/SynGlue.git

SynGlue API Client

SynGlue is a minimal Python client for the SynGlue web API at https://synglue.ahujalab.iiitd.edu.in/. It allows you to submit design and screen jobs, check job status, and download results programmatically.

Installation

Install the package and its only dependency:

pip install synglue requests

Usage Example

from synglue import SynGlue

# Initialize the client
client = SynGlue()

# Submit a design job
design_result = client.submit_design(target="EGFR", threshold=80)
print("Design job response:", design_result)

# Check design job status
design_status = client.design_status(job_id=design_result["job_id"])
print("Design job status:", design_status)

# Download design results (when job is complete)
# client.download_design(job_id=design_result["job_id"], out_path="design_results.zip")

# --- SCREENING EXAMPLE ---

# Submit a screen job with a list of molecules
molecules = [
	{"name": "Aspirin", "smiles": "CC(=O)Oc1ccccc1C(=O)O"},
	{"name": "Imatinib", "smiles": "CC1=CC=CC=C1"}
]
screen_result = client.submit_screen(molecules=molecules)
print("Screen job response:", screen_result)

# Check screen job status
screen_status = client.screen_status(job_id=screen_result["job_id"])
print("Screen job status:", screen_status)

# Download screen results (when job is complete)
# client.download_screen(job_id=screen_result["job_id"], out_path="screen_results.csv")

Methods

  • submit_design(target, threshold=75.0)
  • design_status(job_id)
  • download_design(job_id, out_path)
  • submit_screen(molecules)
  • submit_screen_csv(csv_path)
  • screen_status(job_id)
  • download_screen(job_id, out_path)
  • health_check()

See the source code for full method documentation.

Prerequisites

  • Python 3.7 or higher
  • requests (for API calls)

License

SynGlue is licensed under the MIT License. See LICENSE for more details.

Dependencies

Prerequisites

  • Python 3.7 or higher
  • requests (for API calls)

Install the required package:

pip install requests

No other dependencies are required for the SynGlue API client.

License

SynGlue is licensed under the MIT License. See LICENSE for more details.

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

synglue-0.1.2.tar.gz (3.8 kB view details)

Uploaded Source

Built Distribution

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

synglue-0.1.2-py3-none-any.whl (4.3 kB view details)

Uploaded Python 3

File details

Details for the file synglue-0.1.2.tar.gz.

File metadata

  • Download URL: synglue-0.1.2.tar.gz
  • Upload date:
  • Size: 3.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.8.20

File hashes

Hashes for synglue-0.1.2.tar.gz
Algorithm Hash digest
SHA256 b8197a0344a65c9bf47edd527513cc17a181f5c9b6aa6e7c6d7e67d0c23b2d9f
MD5 4218f6e4b3ed3a40e2117d6101087d65
BLAKE2b-256 cad771d64ee274ecf61ab6613718e5c0d15947bdc2eed638b8ec6617374e4e76

See more details on using hashes here.

File details

Details for the file synglue-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: synglue-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 4.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.8.20

File hashes

Hashes for synglue-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 166413dcd464b679ab4ea339180d4bd4c809ea334d1062fdc62addc41eff3f4b
MD5 c9b161b202f4b85600612f0ffbfb20a8
BLAKE2b-256 85e2f5dfa6bcb51f60e4983ae0f1b95ff5e88be8e9fb216b4548568db29cdf03

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