Skip to content

ankane/rdkit-php

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RDKit PHP

Cheminformatics for PHP, powered by RDKit

Build Status

Installation

Run:

composer require ankane/rdkit

Add scripts to composer.json to download the shared library:

    "scripts": {
        "post-install-cmd": "RDKit\\Vendor::check",
        "post-update-cmd": "RDKit\\Vendor::check"
    }

And run:

composer install

Getting Started

Create a molecule

use RDKit\Molecule;

$mol = Molecule::fromSmiles('c1ccccc1O');

Get the number of atoms

$mol->numAtoms();

Get substructure matches

$mol->match(Molecule::fromSmarts('ccO'));

Get fragments

$mol->fragments();

Generate an SVG

$mol->toSvg();

Fingerprints

A number of fingerprints are supported.

RDKit

$mol->rdkitFingerprint();

Morgan

$mol->morganFingerprint();

Pattern

$mol->patternFingerprint();

Atom pair

$mol->atomPairFingerprint();

Topological torsion

$mol->topologicalTorsionFingerprint();

MACCS

$mol->maccsFingerprint();

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

Updates

Add or remove hydrogen atoms

$mol->addHs();
$mol->removeHs();

Standardize

$mol->cleanup();
$mol->normalize();
$mol->neutralize();
$mol->reionize();
$mol->canonicalTautomer();
$mol->chargeParent();
$mol->fragmentParent();

Conversion

SMILES

$mol->toSmiles();

SMARTS

$mol->toSmarts();

CXSMILES

$mol->toCXSmiles();

CXSMARTS

$mol->toCXSmarts();

JSON

$mol->toJson();

Reactions

Create a reaction

use RDKit\Reaction;

$rxn = Reaction::fromSmarts('[CH3:1][OH:2]>>[CH2:1]=[OH0:2]');

Generate an SVG

$rxn->toSvg();

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-php.git
cd rdkit-php
composer install
composer test

About

Cheminformatics for PHP, powered by RDKit

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages