Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/draulpozas/molarcalc
Node package for calculating the molar mass of a chemical compound by its formula.
https://github.com/draulpozas/molarcalc
chemistry molar-masses molecule node nodejs npm npm-package
Last synced: about 1 month ago
JSON representation
Node package for calculating the molar mass of a chemical compound by its formula.
- Host: GitHub
- URL: https://github.com/draulpozas/molarcalc
- Owner: draulpozas
- Created: 2021-02-01T16:36:15.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2021-02-01T17:28:10.000Z (almost 4 years ago)
- Last Synced: 2024-04-26T21:04:07.206Z (9 months ago)
- Topics: chemistry, molar-masses, molecule, node, nodejs, npm, npm-package
- Language: JavaScript
- Homepage: https://www.npmjs.com/package/molarcalc
- Size: 3.91 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# molarcalc
Very simple npm package, just give it a valid chemical formula and get its molar mass.
## How to use it
Install with:
`npm i molarcalc`Then include this in your code:
`const molarcalc = require('molarcalc');`
`console.log(molarcalc.calc('NaCl'));`
Response should be:
`{ atoms: [ 'Na', 'Cl' ], mass: '58.4425' }``molarcalc.calc()` function returns a JSON object with an array of all the atoms found in the formula, and the calculated molar mass.
## What it can and cannot do
It recognises:
- Elements (written as their periodic table symbols).
- Frequent o-chem abbreviations such as 'Me' for methyl or 'Ph' for 'phenyl' (will probably add some more in the future).
- Numbers.
- Parentheses surrounding several elements. It will read everything inside and add it to the calculation a number of times indicated by the number after the closing parenthesis. Just a complicated way of saying that it knows how to read parentheses.It does NOT recognise:
- Words. Won't recognise 'tri-' or 'acetyl'.
- 'Ac' for 'acetyl', as it creates a conflict with element Actinium. You will need to write 'CH3CO', 'C2H3O', 'COMe', etc.