Noiseless Peaceful Morning

    catalytic

    1.4.2 • Public • Published

    catalytic - a module for your unit conversion needs Build Status

    Features

    • Simple, easily understood API
    • Convert to and from arbitrary units
    • Uses BigNumber for math: avoiding inexplicable floating-point math errors
    • Does not come with awareness of anything by default, you have to teach it whatever conversions you care about

    Examples

    var catalytic = require('catalytic')
     
    var converter = catalytic.converter({
      baseUnitName: 'lb',
      types: [
        {id: 'id1', name: 'case (50lb)', qty: 50},
        {id: 'id2', name: 'porterhouse (1.5lb)', qty: 1.5},
        {id: 'id3', name: 'porterhouse (2lb)', qty: 2}
      ]
    })
     
    converter.convertTo(100, 'id1') // => 2
    converter.convertTo(90, 'id1')  // => 1.8
    converter.strConvertTo(100, 'id1') // => "2 x case (50lb)"
     
    converter.convertFrom(2, 'id1') // => 100
    converter.strConvertFrom(5, 'id1') // "250 x lb"

    If you're converting from/to undefined or null, we assume you're converting from/to the base unit (i.e., not changing anything):

    converter.convertTo(100) // => 100
    converter.strConvertTo(100) // => "100 x lb"
     
    converter.convertFrom(10) // => 10
    converter.strConvertFrom(10) // => "10 x lb"

    There's also some basic methods for easy conversion without an object:

    catalytic.convertToUnitQty({count: 5, unitQty: 10}) // => 50
    catalytic.convertFromUnitQty({count: 50, unitQty: 10}) // => 5

    Contributing

    This module is written in ES2015 and converted to node-friendly CommonJS via Babel. Tests are run with mocha.

    If you're going to add a PR, please write a test too. They live in the test directory. To run all tests:

    npm test
    

    To compile the src directory to lib:

    npm run build
    

    Keywords

    Install

    npm i catalytic

    DownloadsWeekly Downloads

    2

    Version

    1.4.2

    License

    MIT

    Unpacked Size

    65.2 kB

    Total Files

    6

    Last publish

    Collaborators

    • goodeggs-admin
    • demands
    • colincurtin