# KNIME workflow to create RDKit synthon space from SMILES building blocks?

**URL:** <https://forum.knime.com/t/knime-workflow-to-create-rdkit-synthon-space-from-smiles-building-blocks/89658>\
**Category:** Cheminformatics\
**Tags:** python, big-data\
**Created:** [August 20, 2025, 1:12pm UTC](https://forum.knime.com/t/knime-workflow-to-create-rdkit-synthon-space-from-smiles-building-blocks/89658 "2025-08-20T13:12:45Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![Knimeraja](https://forum-cdn.knime.com/letter_avatar_proxy/v4/letter/k/65b543/32.png) [@Knimeraja](https://forum.knime.com/u/Knimeraja)\
**Post date:** [August 20, 2025, 1:12pm UTC](https://forum.knime.com/t/knime-workflow-to-create-rdkit-synthon-space-from-smiles-building-blocks/89658/1 "2025-08-20T13:12:45Z")

</div>

Title: KNIME workflow to create RDKit synthon space from SMILES building blocks?

Hi all, I am reposting this as my earlier post was deleted by me by mistake. I’m looking for a KNIME workflow that takes a set of building blocks (SMILES) and produces an RDKit synthon space file (compatible with rdSynthonSpaceSearch; i.e., the synthon-space text format with synthon SMILES, set/index, reaction id). If you have a sample workflow or pointers (which RDKit KNIME nodes to use), please share. References: [https://greglandrum.github.io/rdkit-blog/posts/2024-12-03-introducing-synthon-search.html](https://greglandrum.github.io/rdkit-blog/posts/2024-12-03-introducing-synthon-search.html) . Also open to tips using the RDKit nodes for KNIME. Thanks!

---

<div class="post-metadata">

**Author:** ![ScottF](https://forum-cdn.knime.com/user_avatar/forum.knime.com/scottf/32/61316_2.png) [@ScottF](https://forum.knime.com/u/ScottF)\
**Post date:** [August 29, 2025, 7:33pm UTC](https://forum.knime.com/t/knime-workflow-to-create-rdkit-synthon-space-from-smiles-building-blocks/89658/2 "2025-08-29T19:33:47Z")

</div>

Hi @Knimeraja -

This one’s not in my wheelhouse. I searched a bit on the KNIME Community Hub and didn’t find anything useful, but maybe that’s just because chemistry’s not my area.

That said, maybe we could tag @greglandrum and see what he might suggest?

---

<div class="post-metadata">

**Author:** ![Knimeraja](https://forum-cdn.knime.com/letter_avatar_proxy/v4/letter/k/65b543/32.png) [@Knimeraja](https://forum.knime.com/u/Knimeraja)\
**Post date:** [September 2, 2025, 10:27am UTC](https://forum.knime.com/t/knime-workflow-to-create-rdkit-synthon-space-from-smiles-building-blocks/89658/4 "2025-09-02T10:27:21Z")

</div>

Thanks, @ScottF, for your reply and for tagging @greglandrum in this post. Recently, I attended one of the KNIME training sessions, and the trainer promised me that they have a workflow for synthon creation and will share it after the training

---

<div class="post-metadata">

**Author:** ![greglandrum](https://forum-cdn.knime.com/user_avatar/forum.knime.com/greglandrum/32/680_2.png) [@greglandrum](https://forum.knime.com/u/greglandrum)\
**Post date:** [September 3, 2025, 10:24am UTC](https://forum.knime.com/t/knime-workflow-to-create-rdkit-synthon-space-from-smiles-building-blocks/89658/5 "2025-09-03T10:24:45Z")

</div>

@Knimeraja I don’t have an example laying around, but I’d be happy to work with you to come up with one.

What we need to do this is some sample lists (SMILES or SDF) with the building blocks you want to use and some idea about what the reaction transformation will be.

For example, for a simple amide bond formation from a set of amines and a set of carboxylic acids, that would be one file with the amines to use, one file with the acids to use, and the description would be “the amine N should be coupled to the carboxylic carbon, the carboxylic OH is lost”,

I’m going to be out of the office for a while, but if you can me that information, I will hopefully be able to put something together early next week. (The RDKit UGM is next week, so it may actually end up taking longer than that)

---

<div class="post-metadata">

**Author:** ![Knimeraja](https://forum-cdn.knime.com/letter_avatar_proxy/v4/letter/k/65b543/32.png) [@Knimeraja](https://forum.knime.com/u/Knimeraja)\
**Post date:** [September 5, 2025, 5:59am UTC](https://forum.knime.com/t/knime-workflow-to-create-rdkit-synthon-space-from-smiles-building-blocks/89658/6 "2025-09-05T05:59:16Z")

</div>

Thank you very much @greglandrum for your response, and apologies for the late reply. I will prepare the necessary files as per your request and share them with you soon.

---

<div class="post-metadata">

**Author:** ![Knimeraja](https://forum-cdn.knime.com/letter_avatar_proxy/v4/letter/k/65b543/32.png) [@Knimeraja](https://forum.knime.com/u/Knimeraja)\
**Post date:** [September 16, 2025, 10:43pm UTC](https://forum.knime.com/t/knime-workflow-to-create-rdkit-synthon-space-from-smiles-building-blocks/89658/7 "2025-09-16T22:43:32Z")

</div>

Dear @greglandrum .

Following your request in the KNIME forum, I’ve prepared sample building block files and reaction description for creating an RDKit synthon space workflow.

## Files Included:

1. **aryl\_halides\_building\_blocks.csv** (1 compounds)

2. **amines\_building\_blocks.csv** (25 compounds)

3. **buchwald\_hartwig\_reaction\_description.txt**

## Reaction Details:

- **Reaction Type** : Buchwald Hartwig C-N coupling
- **Transformation** : Aryl halide + Amine â†’ Aryl amine + HX
- **SMIRKS** : [c:1][Cl,Br,I:2].[N:3][H:4]\>\>[c:1][N:3]
- **Synthon Generation** :
  - Aryl halides: Replace X with [\*:1]
  - Amines: Replace N-H with [\*:1]

## Data Source:

These building blocks are extracted from a dataset of 5,000 validated reaction examples, ensuring chemical validity and diversity.

## Expected Synthon Space Output:

The workflow should generate a synthon space file compatible with rdSynthonSpaceSearch with entries like:

```auto
# Reaction: Buchwald_Hartwig
[*:1]c1cccc(F)c1 0 BH_001 ArylHalide_001
[*:1]c1ccc(Cl)cc1 0 BH_001 ArylHalide_002
C[N:1]([*:1])c1ccccc1 1 BH_001 Amine_001
[*:1][N:1]Cc1ccccc1 1 BH_001 Amine_002

```

This provides exactly what you mentioned: “sample lists with building blocks and description of reaction transformation” for amide bond formation equivalent (C-N coupling in this case).

Looking forward to the KNIME workflow development!  
Regards,  
Nataraj  
[aryl\_halides\_building\_blocks.csv](https://forum.knime.com/uploads/short-url/1jh6qL9Jex3enqANZIIu1veMq53.csv) (79 Bytes)  
[amines\_building\_blocks.csv](https://forum.knime.com/uploads/short-url/1nAJlNqCOJGob3BAO4eEJG4TXn7.csv) (897 Bytes)

---

<div class="post-metadata">

**Author:** ![Knimeraja](https://forum-cdn.knime.com/letter_avatar_proxy/v4/letter/k/65b543/32.png) [@Knimeraja](https://forum.knime.com/u/Knimeraja)\
**Post date:** [September 26, 2025, 6:20am UTC](https://forum.knime.com/t/knime-workflow-to-create-rdkit-synthon-space-from-smiles-building-blocks/89658/8 "2025-09-26T06:20:06Z")

</div>

Hi @greglandrum , did you get a chance to see my message , thanks !

---

<div class="post-metadata">

**Author:** ![Knimeraja](https://forum-cdn.knime.com/letter_avatar_proxy/v4/letter/k/65b543/32.png) [@Knimeraja](https://forum.knime.com/u/Knimeraja)\
**Post date:** [October 14, 2025, 2:08pm UTC](https://forum.knime.com/t/knime-workflow-to-create-rdkit-synthon-space-from-smiles-building-blocks/89658/9 "2025-10-14T14:08:25Z")

</div>

HI @greglandrum , can you help us here ?

---

<div class="post-metadata">

**Author:** ![Knimeraja](https://forum-cdn.knime.com/letter_avatar_proxy/v4/letter/k/65b543/32.png) [@Knimeraja](https://forum.knime.com/u/Knimeraja)\
**Post date:** [October 30, 2025, 11:03pm UTC](https://forum.knime.com/t/knime-workflow-to-create-rdkit-synthon-space-from-smiles-building-blocks/89658/10 "2025-10-30T23:03:10Z")

</div>

Hi @greglandrum, apologies for reaching out again, but I truly appreciate your earlier responses and insights. We’re still trying to resolve this issue and would be grateful if you could share any guidance on possible solutions.  
If direct help isn’t possible, could you please suggest whether an AI or GenAI-based approach might help address this problem?  
Your expertise would mean a lot. Thanks once again for your time and support!

---

<div class="post-metadata">

**Author:** ![greglandrum](https://forum-cdn.knime.com/user_avatar/forum.knime.com/greglandrum/32/680_2.png) [@greglandrum](https://forum.knime.com/u/greglandrum)\
**Post date:** [December 11, 2025, 2:16pm UTC](https://forum.knime.com/t/knime-workflow-to-create-rdkit-synthon-space-from-smiles-building-blocks/89658/11 "2025-12-11T14:16:24Z")

</div>

I have finally managed to make the time to document how to do this. I wrote a blog post on the topic:

> **[Building synthon spaces with BRICS fragments – RDKit blog](https://greglandrum.github.io/rdkit-blog/posts/2025-12-07-BRICS-synthons.html)**
>
> A frequently requested tutorial

---

<div class="post-metadata">

**Author:** ![greglandrum](https://forum-cdn.knime.com/user_avatar/forum.knime.com/greglandrum/32/680_2.png) [@greglandrum](https://forum.knime.com/u/greglandrum)\
**Post date:** [December 16, 2025, 5:04am UTC](https://forum.knime.com/t/knime-workflow-to-create-rdkit-synthon-space-from-smiles-building-blocks/89658/12 "2025-12-16T05:04:36Z")

</div>

This week, I did a follow-up post to this one that shows how to create a synthon space based on chemical reactions.

> **[Building synthon spaces with combinatorial reactions – RDKit blog](https://greglandrum.github.io/rdkit-blog/posts/2025-12-14-Reaction-synthons.html)**
>
> A frequently requested tutorial part 2

-greg

---

<div class="post-metadata">

**Author:** ![system](https://forum-cdn.knime.com/uploads/default/original/1X/ab3ccf34482a0329361734a18199390177204f15.png) [@system](https://forum.knime.com/u/system)\
**Post date:** [March 16, 2026, 5:05am UTC](https://forum.knime.com/t/knime-workflow-to-create-rdkit-synthon-space-from-smiles-building-blocks/89658/13 "2026-03-16T05:05:06Z")

</div>

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.
