Skip to main content

Synthetically Driven Elaborations

Project description

Syndirella Logo

GitHub Tag release

Syndirella (Synthesis Directed Elaborations) is a tool for generating and scoring synthetically practical elaborations of molecules designed from fragment screens. Starting from the retrosynthetic analysis of fragment merged molecules, superstructures of the original reactants are found by catalog search and filtered by selectivity issues. The elaborated final products are defined by reaction SMIRKS patterns and energy minimized in the protein with restraints to experimental data.

Preprint: https://chemrxiv.org/engage/chemrxiv/article-details/68d4f08ff416303770403a44

Documentation

Full Documentation - Complete user guide, API reference, and examples

Documentation Status

Quick Start

Installation

conda create -n syndirella python=3.10
conda activate syndirella
pip install syndirella
pip install aizynthfinder
python -c 'import pyrosetta_installer; pyrosetta_installer.install_pyrosetta()'  # run once, for Fragmenstein

Note: PyRosetta is required by Fragmenstein to operate. Syndirella does not use PyRosetta by default to score compounds. PyRosetta is available for academic and non-commercial use (see PyRosetta License).

Troubleshooting:

cgrtools fails to install:

pip install "cython<3.2"
conda install -c conda-forge c-compiler cxx-compiler
pip install --no-build-isolation cgrtools

Install with HIPPO (optional)

pip install aizynthfinder --no-deps # HIPPO requires `rdkit>=2024.9.6`; AiZynthFinder declares `rdkit<2024`. Install in this order so pip does not pull AiZynthFinder’s RDKit
pip install syndirella[hippo]
conda install -c conda-forge chemicalite

See the HIPPO documentation for full setup and version compatibility.

Basic Usage

  1. Setup AiZynthFinder (required for retrosynthesis):

    ⚠️ WARNING: This step downloads large model files (~750MB total) if run the first time. These are required to run AiZynthFinder.

    Files will be downloaded to: [syndirella_package_path]/aizynth/

    syndirella setup-aizynth
    
  2. Run the pipeline:

    syndirella run --input /absolute/path/to/input.csv --output /absolute/path/to/output_directory --templates /absolute/path/to/templates/ --hits_path /absolute/path/to/fragments.sdf
    

    Note: All paths must be absolute paths.

Example Input

Create a CSV file with your fragment data. Hit names must match the exact names in your SDF file:

smiles,hit1,hit2,hit3,template,compound_set
O=C(NC1CC(C(F)(F)F)C1)c1cc2ccsc2[nH]1,A71EV2A-x0556_A_147_1_A71EV2A-x0526+A+147+1,A71EV2A-x0566_A_147_1_A71EV2A-x0526+A+147+1,,Ax0310a_apo-desolv,my_compound_set
CC(=O)Nc1cc(CC(=O)NCC(NC(=O)CCl)c2cccnc2)c(NC(C)=O)nn1,A71EV2A-x1346_A_250_1_A71EV2A-x0526+A+147+1,,,Ax1346a_apo-desolv,my_compound_set

For complete examples and templates, see the run_syndirella_example directory.

Output Files

The main output file to read is the structured_output.pkl.gz file, which contains:

  • Complete synthesis routes with reaction details
  • Placement information with energy values
  • Structural quality metrics
  • Product information and success flags

This file contains all the information needed to analyze and reproduce the elaborations.

Requirements

  • Python 3.10
  • RDKit
  • AiZynthFinder
  • Fragmenstein
  • Additional dependencies (see pyproject.toml)

Learn More

License

This project is licensed under the MIT License.

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

xchem_syndirella-1.0.2.tar.gz (13.1 MB view details)

Uploaded Source

Built Distribution

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

xchem_syndirella-1.0.2-py3-none-any.whl (9.6 MB view details)

Uploaded Python 3

File details

Details for the file xchem_syndirella-1.0.2.tar.gz.

File metadata

  • Download URL: xchem_syndirella-1.0.2.tar.gz
  • Upload date:
  • Size: 13.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for xchem_syndirella-1.0.2.tar.gz
Algorithm Hash digest
SHA256 4403e5dba24691e23254dd90a0b44b34bf94d27a801416f68d838c9d87cb6082
MD5 be1114115c81fb2ef68d54497888533e
BLAKE2b-256 0b52d66d5b55f08da554f255b0f2d92b302c76a3623582c01403f0b83763cb92

See more details on using hashes here.

Provenance

The following attestation bundles were made for xchem_syndirella-1.0.2.tar.gz:

Publisher: release.yaml on xchem/syndirella

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xchem_syndirella-1.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for xchem_syndirella-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 732223dba93af480dd00da40ed9dbf0017d78f798b40230c9c8a75fe87f09f69
MD5 c8e3375cef7088ae520ba31bf0435851
BLAKE2b-256 222f0044c9f214fd5567dce5615c8a1c4d9c1c5b5de2c131073581c79992ef35

See more details on using hashes here.

Provenance

The following attestation bundles were made for xchem_syndirella-1.0.2-py3-none-any.whl:

Publisher: release.yaml on xchem/syndirella

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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