1.0.2 • Published 4 years ago

ecommerce-calculator v1.0.2

Weekly downloads
2
License
ISC
Repository
github
Last release
4 years ago

Ecommerce calculator for JavaScript

1. Installation

This is a Node.js module available through the npm registry. Installation is done using the npm install command:

Simply type the following into a terminal

$ npm install ecommerce-calculator

2. Usage

const { calculatePrice } = require('ecommerce-calculator');

const totalItems = 500;
const pricePerItem = 1;
const provinceCode = 'ON';

const totalPrice = calculatePrice(totalItems, pricePerItem, provinceCode);
console.log('Total Price', totalPrice);

3. Test

$ npm test

3.1. Output

> mocha test/test.js

    √ Should return total price for Input: 500 items-$1 per item-ON : Output: $565
    √ Should return total price for Input: 3600 items-$2.25 per item-MI : Output: $7984.98
    √ Should output the error if state code not match
    √ Should output the error if total item value is not a number (NAN)
    √ Should output the error if total item value is 0 or less than 0
    √ Should output the error if Price Per Item value is not a number (NAN)
    √ Should output the error if Price Per Item value is 0 or less than 0


  7 passing (86ms)

4. Environment/Staging

It has three various environments as local, development and production.

4.1. Local environment

  • Local environment for developer in their local machine.

4.2. Development environment

  • All feature branch merge on development branch and test all the new features.

4.3. Production environment

  • Once all the testing is completed and approved by the testing and development team - dev branch merge into master branch.
  • It'll be deploy on the npm registry using CI/CD.

5. Description

We have a network of vendors who re-sell our products. We wish to provide them an application to calculate the total cost of an order.

The app needs to give volume discounts and include sales tax.

Another system will accept input from the user, and will call this component with 3 inputs:

  • number of items
  • price per item
  • 2-letter province/state code

The application should output the total price.

The total price is calculated by:

  • calculate the total cost for the items
  • deduct discount based on the quantity
  • add sales tax based on the province/state code

The following tables give the discount rate and tax rates:

Order ValueDiscount Rate
$1,0003%
$5,0005%
$7,0007%
$10,00010%
ProvinceTax Rate
AB5%
ON13%
QC14.975%
MI6%
DE0%

5.1. Example 1

Input:  500 items, $1 per item, Ontario
Output: $565.00

5.2. Example 2

Input:  3600 items, $2.25 per item, Michigan
Output: $7984.98

6. Project Structure

.
├── examples/main.js
├── test/test.js
├── index.js
├── README.md
├── package.json
WORKSPACE FILESPURPOSE
example/main.jsA main.js file shows an example about the usage of this module. More details
test/test.jsA test.js file contains the mocha test. More details
index.jsMain index file with ecommerce-calculator to find total price.
package.jsonA package.json file includes the list of dependencies to install from npm when running npm install.
README.mdIntroductory documentation for the root app.

7. License

MIT