Skip to content

Installation

Python

Install from PyPI — no RDKit or any C/C++ dependency required:

pip install renkin

Requires Python 3.9+ and a modern platform. Pre-built wheels are provided for:

Platform Python Status
Linux x86_64 3.9–3.13 ✅ GitHub Actions
macOS arm64 (Apple Silicon) 3.9–3.13 ✅ GitHub Actions
macOS x86_64 3.9–3.13 ✅ GitHub Actions
Windows x86_64 3.9–3.13 ✅ GitHub Actions

If your platform isn't listed, pip will attempt to build from source (requires Rust toolchain).

Rust

Add to Cargo.toml:

[dependencies]
renkin = "0.15"

Or use cargo add:

cargo add renkin

JavaScript / Node.js

npm install renkin

Or with yarn/pnpm:

yarn add renkin
pnpm add renkin

WebAssembly (browser)

The WASM module is bundled with the npm package. For direct browser use without npm:

<script type="module">
  import init, { find_routes } from 'https://unpkg.com/renkin@latest/renkin.js';
  await init('https://unpkg.com/renkin@latest/renkin_bg.wasm');

  const result = JSON.parse(find_routes("CC(=O)Oc1ccccc1C(=O)O", 5, 3, 0));
  console.log(result);
</script>

Building from Source

Requires Rust 1.75+ (stable):

git clone https://github.com/kent-tokyo/renkin
cd renkin
cargo build --release

For Python wheels (requires maturin):

pip install maturin
maturin develop --features python

For WASM (requires wasm-pack):

wasm-pack build --target web --no-default-features
python3 -m http.server 8080  # then visit http://localhost:8080/demo/