financial-calculators-react
Version:
Financial calculator components for React applications
84 lines (61 loc) • 2.55 kB
Markdown
A collection of financial calculator components for React applications.
```bash
npm install financial-calculators-react
```
The package provides the following calculators:
1. **LumpsumSIPCalculator** - Calculate the future value of a lumpsum investment combined with a Systematic Investment Plan (SIP).
2. **RetirementCalculator** - Calculate retirement corpus needed and monthly investments required based on expenses.
3. **StepUpSIPCalculator** - Calculate the future value of a SIP with annual step-up increments.
## Usage
### Basic Usage
```jsx
import React from 'react';
import { LumpsumSIPCalculator } from 'financial-calculators-react';
const MyFinancialApp = () => {
return (
<div className="app">
<h1>Financial Tools</h1>
<LumpsumSIPCalculator />
</div>
);
};
export default MyFinancialApp;
```
All calculators accept a `theme` prop to customize the appearance:
```jsx
import React from 'react';
import { RetirementCalculator } from 'financial-calculators-react';
const MyFinancialApp = () => {
const customTheme = {
primary: "#1E40AF", // Main color
secondary: "#3B82F6", // Secondary color
accent: "#DBEAFE", // Accent color for highlights
background: "#F8FAFC", // Background color
textPrimary: "#1F2937", // Primary text color
textSecondary: "#6B7280" // Secondary text color
};
return (
<div className="app">
<h1>Retirement Planning</h1>
<RetirementCalculator theme={customTheme} />
</div>
);
};
export default MyFinancialApp;
```
This package requires you to provide implementations for the UI components used by the calculators. The following components need to be provided in your application:
- UI Components: CalculatorContainer, InputSection, ResultsSection, etc.
- UI Elements: InputField, SelectField, Button, ResultCard, etc.
- Chart Components: LineChart, BarChart, ChartToggle, ChartIcons
- Utility Components: ReportDialog, ReportOptions, etc.
- Utility Functions: formatCurrency, numberToWords, etc.
- Validation Functions: validateRequiredFields, validateNumericFields, etc.
- Report Generation: generateReport, downloadReport, sendReportViaWhatsApp
You can create a wrapper around this package that provides these implementations specific to your UI library of choice (Material-UI, Chakra UI, etc.).
## License
MIT