Chython [ˈkʌɪθ(ə)n]
Library for processing molecules and reactions in a Python way.
Features
File formats
- Read/write/convert MDL RDF/RXN and SDF/MOL (V2000 & V3000, including atom parity and enhanced stereo), MRV, SMILES/SMARTS, InChI (inchi-trust library), XYZ, PDB
- Compact binary (de)serialization and full pickle support
Toolkit interoperability
Conversions build the target structure directly from the graph, so atom order matches
atoms() and stereo is carried over without needing a 2D layout.
| Toolkit | API | Requires |
|---|---|---|
| RDKit | to_rdkit() / MoleculeContainer.from_rdkit() |
extra rdkit |
| Open Babel | to_openbabel() |
extra extra-clean2d |
| Indigo | to_indigo() |
extra extra-clean2d |
| CDK | to_cdk() |
extra extra-clean2d + cdk.jar (CDK_PATH) |
| CDPKit | 3D conformers (conformer_engine = 'cdpkit') |
extra extra-clean3d |
Allene stereo is not portable through any of these toolkits. Indigo additionally omits cis-trans, which it derives from 2D coordinates.
IUPAC names, both directions
from chython import iupac
mol = iupac('ethanol') # name -> structure, via OPSIN
mol.iupac # 'ethanol' -- structure -> name, via openclatura
iupac() needs JPype and opsin.jar (OPSIN_PATH); the .iupac property needs the
iupac extra (Python >= 3.11) and returns None when the structure cannot be named.
Molecules
- Build and edit molecules and reactions with a pure-Python API
- Standardize, canonicalize, kekulize/aromatize, and check valences
- Tautomer enumeration
- Tetrahedral, allene, and cis/trans stereo
- Morgan and linear fingerprints with Tanimoto similarity
Search
- Subgraph isomorphism and maximum common substructure (MCS) search
- SMARTS parser with chython-specific query semantics
Reactions
- Condensed Graph of Reaction (CGR)
- Atom-to-atom mapping (neural attention + rule-based fixing) and template-based mapping reconstruction
- Template-based reaction application (
Reactor,Transformer) and reaction enumeration - Functional and protective group detection and deprotection
- Sticky fragment / linker enumeration for combinatorial reassembly
Depiction
- 2D coordinate generation, default SmilesDrawer, switchable to RDKit/CDK/Open Babel/Indigo (
clean2d_engine) - 3D conformer generation with RDKit or CDPKit (
conformer_engine) - 2D/3D SVG depiction with Jupyter support
Full documentation can be found here.
Install
Only Python 3.10+.
pip install chython[racer-default]
Optional extras, combinable (chython[racer-default,rdkit,iupac]):
| Extra | Enables |
|---|---|
racer-default |
JS engine for the default 2D layout backend |
rdkit |
to_rdkit/from_rdkit, RDKit 2D layout and 3D conformers |
mapping |
neural atom-to-atom mapping |
iupac |
molecule.iupac name generation (Python >= 3.11) |
extra-clean2d |
CDK, Open Babel and Indigo backends (CDK also needs cdk.jar) |
extra-clean3d |
CDPKit conformer engine |
png |
PNG output from depiction |
CGRtools
Chython is a fork of CGRtools.
Copyright
- 2014-2026 Ramil Nugmanov nougmanoff@protonmail.com main developer
Contributors
CGRtools contributors are included too.
- Adelia Fatykhova adelik21979@gmail.com
- Aigul Khakimova
- Aleksandr Sizov murkyrussian@gmail.com
- Alexandre Varnek varnek@unistra.fr
- Dinar Batyrshin batyrshin-dinar@mail.ru
- Dmitrij Zanadvornykh zandmitrij@gmail.com
- Philippe Gantzer
- Ravil Mukhametgaleev sonic-mc@mail.ru
- Tagir Akhmetshin tagirshin@gmail.com
- Timur Gimadiev timur.gimadiev@gmail.com
- Timur Madzhidov tmadzhidov@gmail.com
- Zarina Ibragimova
Metadata
Release files for chython 2.24
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
Total release size: 59.1 MB
Release files / chython-2.24-cp314-cp314-win_amd64.whl
| Download URL | chython-2.24-cp314-cp314-win_amd64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.14 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
aac23099b042f971b14e8ceb79a6b509947a5c1c41e354fa9f8e0de4160da881
|
|
BLAKE2b-256 checksum How to use checksums |
9d2c18482f0e141aebbc29148e1ff82fcd63e3d12fd93e32942d532cb805be5e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / chython-2.24-cp314-cp314-manylinux_2_39_x86_64.whl
| Download URL | chython-2.24-cp314-cp314-manylinux_2_39_x86_64.whl |
|---|---|
| Size | 4.4 MB |
| Tags | CPython 3.14 Linux glibc 2.39+ x86-64 |
|
SHA-256 checksum How to use checksums |
f83327c0ddb246af87a224fe1d6ecc6fd8fa5b84a549d1f4751f2c69ec60dac3
|
|
BLAKE2b-256 checksum How to use checksums |
00b3cf0ad676403ca2413c48f564a9e26769892f2886e5bb0127bfaebc2b8e60
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / chython-2.24-cp314-cp314-manylinux_2_39_aarch64.whl
| Download URL | chython-2.24-cp314-cp314-manylinux_2_39_aarch64.whl |
|---|---|
| Size | 4.3 MB |
| Tags | CPython 3.14 Linux glibc 2.39+ ARM64 |
|
SHA-256 checksum How to use checksums |
8289d0103758e5848d61b28674cd959e47deacb13b174706a7acf883a8aad266
|
|
BLAKE2b-256 checksum How to use checksums |
49f8cb46bac6adbb040771d0be95dba9abeec2e7c8b65acf0ec3bc828ba25dda
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / chython-2.24-cp314-cp314-macosx_26_0_arm64.whl
| Download URL | chython-2.24-cp314-cp314-macosx_26_0_arm64.whl |
|---|---|
| Size | 1.7 MB |
| Tags | CPython 3.14 macOS 26.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
8b93527249cbea15fae95d4b77e8d9ffdeae53aa6e104d77cda62a71897dd893
|
|
BLAKE2b-256 checksum How to use checksums |
f3e8e59bbf7caf25f28c306a124bc87fa3d1b9356b06528af5ca15dd98a36746
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / chython-2.24-cp313-cp313-win_amd64.whl
| Download URL | chython-2.24-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 1.4 MB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
b420ac90e9424a0065cca7e0d6bec67c019c3cf87877151c7068d26f4c8a95d8
|
|
BLAKE2b-256 checksum How to use checksums |
2d81ef212972aab43b5999465b226d0f3e74efe1b0bfc9118d8afc989790687f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.15
|
Release files / chython-2.24-cp313-cp313-manylinux_2_39_x86_64.whl
| Download URL | chython-2.24-cp313-cp313-manylinux_2_39_x86_64.whl |
|---|---|
| Size | 4.4 MB |
| Tags | CPython 3.13 Linux glibc 2.39+ x86-64 |
|
SHA-256 checksum How to use checksums |
4bf5d81a320092822e9cb156670c33a1d776d9ecf50f9c67bce5eb70fd468ad5
|
|
BLAKE2b-256 checksum How to use checksums |
64b8812dbf84b1d6b849dbcfda541e9596f3625a8866d4b06761b67e5832686a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.15
|
Release files / chython-2.24-cp313-cp313-manylinux_2_39_aarch64.whl
| Download URL | chython-2.24-cp313-cp313-manylinux_2_39_aarch64.whl |
|---|---|
| Size | 4.3 MB |
| Tags | CPython 3.13 Linux glibc 2.39+ ARM64 |
|
SHA-256 checksum How to use checksums |
b4968d32703afd51037ac8af2838cec7a313ce743730a018636c85f07e562c49
|
|
BLAKE2b-256 checksum How to use checksums |
038aa19c04e6b46277ac61ab3d4d4ad0604bfb6be93ae9794a77784c6fdc663b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.15
|
Release files / chython-2.24-cp313-cp313-macosx_26_0_arm64.whl
| Download URL | chython-2.24-cp313-cp313-macosx_26_0_arm64.whl |
|---|---|
| Size | 1.7 MB |
| Tags | CPython 3.13 macOS 26.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
4c20566727e1acabe8dd92ffe77c4fffa06ace5adc949059e2a4945b7c7b37a9
|
|
BLAKE2b-256 checksum How to use checksums |
26d18aab1d3b44754d08cd424a57814657d8efd5bd874a97c60c2bdb47d9795a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / chython-2.24-cp312-cp312-win_amd64.whl
| Download URL | chython-2.24-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 1.4 MB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
0ba4e0b63cea3dd933f3b9835d7d5a7dfcda67dfef20a7fe153b5ec0c53c190b
|
|
BLAKE2b-256 checksum How to use checksums |
0f3cbdc2dbf1624a144678678c9929c9cce47d6281de0a476b999dc9425e80c0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.10
|
Release files / chython-2.24-cp312-cp312-manylinux_2_39_x86_64.whl
| Download URL | chython-2.24-cp312-cp312-manylinux_2_39_x86_64.whl |
|---|---|
| Size | 4.4 MB |
| Tags | CPython 3.12 Linux glibc 2.39+ x86-64 |
|
SHA-256 checksum How to use checksums |
0b7d84a5debaf7a22611419193e5ef5c3f138004d309b266c435f525a525e0d2
|
|
BLAKE2b-256 checksum How to use checksums |
3d9cb5816ad1fbfeee1a6abbaa1bc315017fd0b7cb8a61db8dcae92aafa7ad76
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.14
|
Release files / chython-2.24-cp312-cp312-manylinux_2_39_aarch64.whl
| Download URL | chython-2.24-cp312-cp312-manylinux_2_39_aarch64.whl |
|---|---|
| Size | 4.3 MB |
| Tags | CPython 3.12 Linux glibc 2.39+ ARM64 |
|
SHA-256 checksum How to use checksums |
985c4bcc74f9116722673300adc89ea039395940f050778acd3885c5934de9ec
|
|
BLAKE2b-256 checksum How to use checksums |
cf09b22202a40649c3af54aaccfe2a482b3573b9d41a63a653dd76064d0b48ec
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.14
|
Release files / chython-2.24-cp312-cp312-macosx_26_0_arm64.whl
| Download URL | chython-2.24-cp312-cp312-macosx_26_0_arm64.whl |
|---|---|
| Size | 1.7 MB |
| Tags | CPython 3.12 macOS 26.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
19dd338f5b7aff573833fe3176be311fe16721bec38fc326802f7e4d6bc9ae75
|
|
BLAKE2b-256 checksum How to use checksums |
4ff1f9ba9996f4fe8aae481bf5677effc6e3ede96c2c84d1120bbc96e06d4949
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.10
|
Release files / chython-2.24-cp311-cp311-win_amd64.whl
| Download URL | chython-2.24-cp311-cp311-win_amd64.whl |
|---|---|
| Size | 1.4 MB |
| Tags | CPython 3.11 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
f3d6d0a5fb121fcbc1a2e618de010385d2d9fa74b69275ab5a160755bc7c9b23
|
|
BLAKE2b-256 checksum How to use checksums |
33c43398b27fec5bc39813f0e79a992e766df22eb7b3be5cac2db137b709b3dc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.9
|
Release files / chython-2.24-cp311-cp311-manylinux_2_39_x86_64.whl
| Download URL | chython-2.24-cp311-cp311-manylinux_2_39_x86_64.whl |
|---|---|
| Size | 4.4 MB |
| Tags | CPython 3.11 Linux glibc 2.39+ x86-64 |
|
SHA-256 checksum How to use checksums |
53bd469af19d458976e541393d973a3aa8d87ef82f55ec58604a2168496ef0b0
|
|
BLAKE2b-256 checksum How to use checksums |
3049b1b462c35dddec56eae0c52da93142621bc534731547528163124b48e2bc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.16
|
Release files / chython-2.24-cp311-cp311-manylinux_2_39_aarch64.whl
| Download URL | chython-2.24-cp311-cp311-manylinux_2_39_aarch64.whl |
|---|---|
| Size | 4.4 MB |
| Tags | CPython 3.11 Linux glibc 2.39+ ARM64 |
|
SHA-256 checksum How to use checksums |
2d782447d3df76089ca4255d7c3d42024e20f147f9fddb1456596dacfe30b207
|
|
BLAKE2b-256 checksum How to use checksums |
27d5a40c0ba492b43aa7b01f911a2fd9bf6c598708b45019fe910b40fb8b3353
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.16
|
Release files / chython-2.24-cp311-cp311-macosx_26_0_arm64.whl
| Download URL | chython-2.24-cp311-cp311-macosx_26_0_arm64.whl |
|---|---|
| Size | 1.7 MB |
| Tags | CPython 3.11 macOS 26.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
a132ec9e76b6f4ec2ddad81418973cc6a210da310d2d24a9ad4b7b4357225d2c
|
|
BLAKE2b-256 checksum How to use checksums |
8995059dc0c6a2f486178c85368cfee070752b0b464e9bc6c50bb94b3cbd86fb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.9
|
Release files / chython-2.24-cp310-cp310-win_amd64.whl
| Download URL | chython-2.24-cp310-cp310-win_amd64.whl |
|---|---|
| Size | 1.4 MB |
| Tags | CPython 3.10 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
b0b224c90753ef6c298caf5569b41d2c1b92428f4a5ca8906b904f69006961e8
|
|
BLAKE2b-256 checksum How to use checksums |
338d5bd2852369a35a95044b39ac565966ab783c13595004610dda18ad9df99a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.10.11
|
Release files / chython-2.24-cp310-cp310-manylinux_2_39_x86_64.whl
| Download URL | chython-2.24-cp310-cp310-manylinux_2_39_x86_64.whl |
|---|---|
| Size | 4.3 MB |
| Tags | CPython 3.10 Linux glibc 2.39+ x86-64 |
|
SHA-256 checksum How to use checksums |
18ee362b294193d29f6b64bdac6e58c8ae79cb8e652e45a9343eb3f9d0e5f043
|
|
BLAKE2b-256 checksum How to use checksums |
572a4465aea370e3d975d2c43766e11bd6964493f5077e6f0a31b9ec1b5b621f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.10.21
|
Release files / chython-2.24-cp310-cp310-manylinux_2_39_aarch64.whl
| Download URL | chython-2.24-cp310-cp310-manylinux_2_39_aarch64.whl |
|---|---|
| Size | 4.3 MB |
| Tags | CPython 3.10 Linux glibc 2.39+ ARM64 |
|
SHA-256 checksum How to use checksums |
25a06cb195bafb5969cae819fee6ffe4c232e862b6ab6b3c15d83b026d7daeb2
|
|
BLAKE2b-256 checksum How to use checksums |
2d00c81830ce0e0dea8c023e49c9b9a733faf7d54d1755cf716fc1cd8b339ef6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.10.21
|
Release files / chython-2.24-cp310-cp310-macosx_26_0_arm64.whl
| Download URL | chython-2.24-cp310-cp310-macosx_26_0_arm64.whl |
|---|---|
| Size | 1.7 MB |
| Tags | CPython 3.10 macOS 26.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
b0d49eaaf72a61759b36cf37b2b9cff8dca454ed470c81ce804cf506c73cee9f
|
|
BLAKE2b-256 checksum How to use checksums |
06f906bf9f5adcae112888b89622cfa6f39aa1b195e7f5b7c7db6745e8687fc2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.10.11
|