MCUL simplifies the logic behind organizing atoms into molecules.
MCUL can be used in Node.js or with webpack, browserify, etc. Add using NPM or Yarn.
npm i mcul
yarn add mcul
MCUL can also be used over CDN. In this case, mcul loads as window.mcul
.
<script src="https://cdn.jsdelivr.net/npm/mcul@0.1.0-alpha3/dist/mcul.js"></script>
Try it out for yourself in the browser.
import { Molecule, Atom } from 'mcul';
let ethanol = new Molecule();
let hydrogen = ethanol.createAtoms('H', 6);
let carbon = [new Atom('C').in(ethanol), ethanol.contains(new Atom('C'))];
let oxygen = ethanol.createAtom('O');
ethanol
.bond(carbon[0], carbon[1])
.bond(carbon[0], hydrogen[0])
.bond(carbon[0], hydrogen[1])
.bond(carbon[0], hydrogen[2])
.bond(carbon[1], hydrogen[3])
.bond(carbon[1], hydrogen[4])
.bond(carbon[1], oxygen)
.bond(oxygen, hydrogen[5]);
The Molecule
class serves as a storage for atoms and as a way to interact with the molecule as a whole.
Accepts a string element symbol (e.g. 'H'
), and returns an Atom
instance. Atoms created through this method are already associated with the molecule.
Accepts a string element symbol (e.g. 'H'
) as well as a numeric count (e.g. 4
), and returns an array of Atom
instances.
Accepts two atoms and bond options to create a bond.
Visit mcul.js.org for the complete documentation.
Data | Source |
---|---|
Average Atomic Masses | PubChem |
Copyright © 2020 Russell Steadman. Licensed under an MIT License (see the LICENSE file for terms).