It does support the same functionality offered by
number values (NO numpy-like array values) and it does NOT support arbitrary-precision signed decimal numbers (such as decimal.js, big.js or bignumber.js).
📖 API DOCS 📖 : financialjs.netlify.app
npm install --save-dev financial
yarn add financial
This library exports its functionality using different module formats.
const financial = // ./index.js// use `financial.fv`, `financial.pmt`, etc.
or, leveraging destructuring
const fv pmt = // ./index.js// use `fv`, `pmt`, etc.
An optimized Commonjs for browsers can be imported directly from the web:
Note: make sure you replace the
x.y.z with the correct version you want to use.
ESM (EcmaScript Modules)
Also working with Typescript
// use `fv`, `pmt`, etc.
default export in the ESM implementation, so you have to explicitely import the functionality you need, one by one.
Use with Deno
Make sure you specify the version you prefer in the import URL:
assertEqualsf.fv005 / 12, 10 * 12, -100, -100, 15692928894335755
Implemented functions and Documentation
Click on the function name to get the full documentation for every function, or check out the full programmatic documentation at financialjs.netlify.app.
fv(): Future Value (since v0.0.12)
pmt(): Total payment (since v0.0.12)
nper(): Number of period payments (since v0.0.12)
ipmt(): Interest portion of a payment (since v0.0.12)
ppmt(): Payment against loan principal (since v0.0.14)
pv(): Present Value (since v0.0.15)
rate(): Rate of interest per period (since v0.0.16)
irr(): Internal Rate of Return (since v0.0.17)
npv(): Net Present Value (since v0.0.18)
mirr(): Modified Internal Rate of Return (since 0.1.0)
Below is a list of commands you will probably find useful.
yarn start: Runs the project in development/watch mode. Your project will be rebuilt upon changes.
npm run buildor
yarn build: Bundles the package to the
distfolder. The package is optimized and bundled with Rollup into multiple format (CommonJS, UMD, and ES Module).
npm run build:docsor
yarn build:docs: Builds the API documentation in the
yarn test: Runs the test watcher (Jest) in an interactive mode. it runs tests related to files changed since the last commit.
npm run test:watchor
yarn test:watch: runs the tests in watch mode
Test with Deno
To test with Deno, run:
deno test test/deno.ts
Everyone is very welcome to contribute to this project. You can contribute just by submitting bugs or suggesting improvements by opening an issue on GitHub.
You can also submit PRs as long as you adhere with the code standards and write tests for the proposed changes.
Licensed under MIT License. © Luciano Mammino.