Skip to content


Repository files navigation

OpenChemLib JS

JavaScript port of the OpenChemLib Java library.

Zakodium logo

Maintained by Zakodium

NPM version build status npm download DOI


npm install openchemlib


This library is available in three different builds: minimal, core and full. Each larger build contains all functionalities from the smaller ones.

The core build is the one that you get when you require('openchemlib'). It contains all functionalities that can be used in Node.js.

The minimal (require('openchemlib/minimal')) build is a smaller one (~ half the size of core) that is meant to be used in a browser application if bundle size matters and prediction functionalities are not needed.

The full build (require('openchemlib/full')) build is the largest build. It contains a structure viewer and a structure editor for browser applications.

Modules present in minimal, core and full builds

Modules present only in core and full builds

Modules present only in full build


To build this project, you need :

Install dependencies

npm ci

Configure directories

Copy config.default.json to config.json and put the path to the GWT classes on your computer.
If you want to use a custom JDK installation, set the "jdk" key to be the path to your JDK directory.

npm scripts

To run one of the scripts, use npm run <scriptName>.
To pass an options, use npm run <scriptName> -- --option.


  • -m [name]: only process module "name"
  • -v: verbose output

compile:min / compile:pretty

Execute the GWT compiler.


Transform the GWT compiled files to JavaScript modules.

build:min / build:pretty

Compile and export.


Copy the required java files from the openchemlib project.