Project

rdkit-rb

0.0
A long-lived project that still receives updates
Cheminformatics for Ruby, powered by RDKit
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
 Dependencies

Runtime

>= 0
 Project Readme

RDKit.rb

Cheminformatics for Ruby, powered by RDKit

Build Status

Installation

Add this line to your application’s Gemfile:

gem "rdkit-rb"

Getting Started

Create a molecule

mol = RDKit::Molecule.from_smiles("c1ccccc1O")

Get the number of atoms

mol.num_atoms

Get substructure matches

mol.match(RDKit::Molecule.from_smarts("ccO"))

Get fragments

mol.fragments

Generate an SVG

mol.to_svg

Fingerprints

A number of fingerprints are supported.

RDKit

mol.rdkit_fingerprint

Morgan

mol.morgan_fingerprint

Pattern

mol.pattern_fingerprint

Atom pair

mol.atom_pair_fingerprint

Topological torsion

mol.topological_torsion_fingerprint

MACCS

mol.maccs_fingerprint

You can use a library like pgvector-ruby to find similar molecules. See an example.

Updates

Add or remove hydrogen atoms

mol.add_hs!
mol.remove_hs!

Standardize

mol.cleanup!
mol.normalize!
mol.neutralize!
mol.reionize!
mol.canonical_tautomer!
mol.charge_parent!
mol.fragment_parent!

Conversion

SMILES

mol.to_smiles

SMARTS

mol.to_smarts

CXSMILES

mol.to_cxsmiles

CXSMARTS

mol.to_cxsmarts

JSON

mol.to_json

Reactions

Create a reaction

rxn = RDKit::Reaction.from_smarts("[CH3:1][OH:2]>>[CH2:1]=[OH0:2]")

Generate an SVG

rxn.to_svg

History

View the changelog

Contributing

Everyone is encouraged to help improve this project. Here are a few ways you can help:

To get started with development:

git clone https://github.com/ankane/rdkit-ruby.git
cd rdkit-ruby
bundle install
bundle exec rake vendor:all
bundle exec rake test