Socket
Socket
Sign inDemoInstall

@untemps/loan-schedule

Package Overview
Dependencies
0
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @untemps/loan-schedule

Class to generate a schedule of loan payments


Version published
Weekly downloads
7
Maintainers
1
Install size
2.05 MB
Created
Weekly downloads
 

Readme

Source

@untemps/loan-schedule

Class to generate a schedule of monthly loan payments.

It has been built with a single purpose in mind so far, but features will be added in the next fews weeks.
Don't hesitate to contact the team if you think about a specific usage we may address.

npm GitHub Workflow Status Codecov

Installation

yarn add @untemps/loan-schedule

Usage

Import LoanSchedule:

import { LoanSchedule } from '@untemps/loan-schedule'

Create an instance of LoanSchedule passing three objects:

// Settings object that describes the properties of the loan (see below "Loan Settings")
const loanSettings = {
	amount: 79950, // Amount of the loan in any currency
	term: 25, // Loan term in years
	interestRate: 2, // Interest rate in percentage
	insuranceRate: 0.5, // Insurance rate in percentage
}

// List of amortizations monthly paid until the term of the loan (see below "Loan Amortizations")
const loanAmortizations = [
	{
		label: 'Rent', // Label of the amortization.
		value: 600, // Amount of the maortization.
		type: LoanScheduleAmortizationType.CREDIT, // Type of the amortization: "credit" or "debit"
	},
	{
		label: 'Payment',
		type: LoanScheduleAmortizationType.DEBIT,
		compute: LoanScheduleCompute.PAYMENT, // Computation method of the amortization (optional). That means the amount has to be automatically calculated by the class. "payment" and "insurance" are available so far.
	},
	{
		label: 'Property Tax',
		value: 30,
		rate: 5, // Yearly inflation rate of the amortization (optional).
		type: LoanScheduleAmortizationType.DEBIT,
	},
]

// Configuration of the output (see below "Configuration")
const config = {
    headers: {
        year: {
            label: 'Année',
        },
        balance: {
            label: 'Solde',
        },
    },
}

const schedule = new LoanSchedule(loanSettings, loanAmortizations, config);

Constructor parameters

ParameterTypeDescription
loanSettingsLoanScheduleSettingsSettings object that describes the properties of the loan (see below "Loan Settings")
loanAmortizationsLoanScheduleAmortization[]List of amortizations monthly paid until the term of the loan (see below "Loan Amortizations")
configLoanScheduleConfigConfiguration of the output (see below "Configuration")

Loan Settings

Settings object that describes the properties of the loan

LoanScheduleSettings type
PropertyTypeDescription
amountnumberAmount of the loan in any currencyAmount of the loan in any currency
termnumberLoan term in years
interestRatenumberInterest rate in percentage
insuranceRatenumberInsurance rate in percentage

Loan Amortizations

List of amortizations monthly paid until the term of the loan

LoanScheduleAmortization type
PropertyTypeDescription
labelstringLabel of the amortization
valuenumberMonthly amount of the amortization
ratenumberYearly inflation rate of the amortization (optional).
typeLoanScheduleAmortizationTypeType of the amortization: "credit" or "debit"
computeLoanScheduleComputeComputation method of the amortization (optional). That means the amount has to be automatically calculated by the class. "payment" and "insurance" are available so far.

Configuration

The configuration object allows to change the output to reflect your specific needs.

LoanScheduleConfig type
PropertyTypeDescription
headers
--- payment
------- labelstringLabel of the payment amortization
--- insurance
------- labelstringLabel of the insurance amortization

Development

A demo can be served for development purpose on http://localhost:10001/ running:

yarn dev

Keywords

FAQs

Last updated on 21 Apr 2021

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc