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.3.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.3-py3-none-any.whl (9.6 MB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for xchem_syndirella-1.0.3.tar.gz
Algorithm Hash digest
SHA256 7281a635c42ad7d6ef0077cdfb69773345b116da8c916cbc083ec4b7f3aa7eaf
MD5 f31a1c78987a1f5c3e69dbec7b27c759
BLAKE2b-256 decde0fdae011b4ed5caaadb077aa2830fa4a601fb11807d6bea5e83dabe64d0

See more details on using hashes here.

Provenance

The following attestation bundles were made for xchem_syndirella-1.0.3.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.3-py3-none-any.whl.

File metadata

File hashes

Hashes for xchem_syndirella-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 f0a98bfaa49e75c4e196d801f611f8e31b58962b1c5f2f2a76f209496f60e7e0
MD5 a1546f1ed764a7202831cbb5a6fc717a
BLAKE2b-256 4df36a4c576f6bc7f833325f2505063c42704c15d6188da0f70e878fb51477b6

See more details on using hashes here.

Provenance

The following attestation bundles were made for xchem_syndirella-1.0.3-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