Skip to content

Latest commit

Β 

History

5 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

EMI-Calculator

Advanced EMI Calculator Pro

A comprehensive, feature-rich EMI (Equated Monthly Installment) calculator web application built with React and FastAPI. This application provides advanced loan calculation features including prepayment options, loan comparison, tax benefits, refinancing analysis, and more.

✨ Features

Core Calculators

  • Standard EMI Calculator: Calculate monthly EMI with interactive sliders
  • Prepayment Calculator: See how prepayments reduce tenure and interest
  • Loan Comparison Tool: Compare multiple loan scenarios side-by-side
  • Calculation Methods: Support for both Reducing Balance and Flat Rate calculations
  • Step-up EMI Calculator: Plan EMI increases to close loans faster
  • Rent vs Buy Analyzer: Make informed decisions about renting vs buying property
  • Refinance Calculator: Evaluate if refinancing makes financial sense
  • Tax Benefit Calculator: Calculate tax savings under Indian Income Tax Act (Sections 80C, 24, 80EEA)
  • Floating Rate Calculator: Model loans with variable interest rates

Advanced Features

  • βœ… Multiple Prepayment Options: One-time, yearly, monthly, quarterly prepayments
  • βœ… Prepayment Strategies: Choose between EMI reduction or tenure reduction
  • βœ… Interactive Charts: Pie charts, line charts, bar charts for visual analysis
  • βœ… Detailed Amortization Schedules: Month-by-month and yearly breakdowns
  • βœ… Tax Benefit Analysis: Calculate deductions under old and new tax regimes
  • βœ… Break-even Analysis: For refinancing and rent vs buy decisions
  • βœ… Processing Fees & Penalties: Factor in all costs for accurate calculations
  • βœ… Responsive Design: Works seamlessly on desktop, tablet, and mobile devices
  • βœ… Real-time Calculations: Instant results as you adjust parameters
  • βœ… Export Ready: Print-friendly layouts for reports

πŸ› οΈ Technology Stack

Frontend

  • React 18.2: Modern UI library
  • React Router DOM: Client-side routing
  • Recharts: Beautiful, responsive charts
  • Axios: HTTP client for API calls
  • CSS3: Custom styling with modern features

Backend

  • FastAPI: High-performance Python web framework
  • Pydantic: Data validation using Python type hints
  • Uvicorn: ASGI server for FastAPI
  • Python 3.8+: Backend programming language

πŸš€ Getting Started

Prerequisites

  • Option 1 (Docker): Docker & Docker Compose
  • Option 2 (Manual): Python 3.8+, Node.js 14+, npm

Installation

🐳 Option 1: Docker Deployment

A. Local Development (3 containers)

# Navigate to project directory
cd EMI-Calculator

# Build and start all services
docker-compose up -d

# View logs
docker-compose logs -f

Access:

B. VPS Production Deployment (Single Port)

# On VPS
cd /opt/emi-calculator

# Deploy
chmod +x deploy.sh
./deploy.sh

Access:

See VPS_DEPLOYMENT.md for complete VPS deployment guide.
See DOCKER.md for local Docker deployment guide.


πŸ’» Option 2: Manual Setup

  1. Clone the repository
git clone <repository-url>
cd EMI-Calculator
  1. Backend Setup
cd backend
pip install -r requirements.txt
python advanced_main.py
  1. Frontend Setup (in a new terminal)
cd frontend
npm install
npm start
  1. Access the Application

🎯 Usage

Standard EMI Calculator

  1. Enter loan amount, interest rate, and tenure
  2. View monthly EMI, total interest, and payment breakdown
  3. Analyze the amortization schedule

Prepayment Calculator

  1. Input loan details
  2. Configure prepayment amount and frequency
  3. Choose between EMI reduction or tenure reduction
  4. Compare savings vs standard EMI

Loan Comparison

  1. Add multiple loan scenarios
  2. Adjust parameters for each scenario
  3. View side-by-side comparison charts
  4. Analyze which loan option is best

Tax Benefit Calculator

  1. Enter annual principal and interest paid
  2. Specify property value and income
  3. Select tax regime (old/new)
  4. View tax deductions and savings

Rent vs Buy Analyzer

  1. Input property price and down payment
  2. Enter monthly rent and appreciation rates
  3. View break-even analysis
  4. Get recommendation based on your scenario

Refinance Calculator

  1. Enter current loan details
  2. Input new loan terms
  3. Factor in processing fees and penalties
  4. View break-even period and net savings

Floating Rate Calculator

  1. Enter initial loan details
  2. Add expected rate changes over time
  3. View EMI variations and total interest
  4. Analyze rate change timeline

πŸ“Š API Endpoints

Advanced EMI Calculation

POST /api/calculate/advanced

Calculate EMI with advanced features including prepayments, step-up EMI, and processing fees.

Step-up EMI

POST /api/calculate/stepup

Calculate EMI with periodic increases.

Tax Benefits

POST /api/calculate/tax-benefit

Calculate tax deductions and savings on home loans.

Rent vs Buy

POST /api/calculate/rent-vs-buy

Compare renting vs buying a property.

Refinance Analysis

POST /api/calculate/refinance

Evaluate refinancing benefits.

Floating Rate

POST /api/calculate/floating-rate

Calculate EMI with variable interest rates.

🎨 Features Breakdown

1. Prepayment Options

  • Lump Sum: One-time prepayment at any month
  • Yearly: Annual prepayments
  • Monthly: Regular monthly additional payments
  • Quarterly: Prepayments every 3 months
  • Strategy Selection: Reduce EMI or reduce tenure

2. Interactive Charts

  • Pie Charts: Principal vs Interest breakdown
  • Line Charts: Balance reduction over time, rate changes
  • Bar Charts: Yearly payment breakdown, comparison charts
  • Responsive: Auto-adjust to screen size

3. Tax Benefits (India)

  • Section 80C: Principal repayment deduction (up to β‚Ή1.5 lakh)
  • Section 24: Interest payment deduction (up to β‚Ή2 lakh)
  • Section 80EEA: First home buyer benefit (up to β‚Ή1.5 lakh)
  • Tax Regime Comparison: Old vs New regime analysis

4. Advanced Analysis

  • Break-even Calculations: For refinancing and rent vs buy
  • Effective Interest Rate: After tax benefits
  • Total Cost Analysis: Including all fees and penalties
  • Savings Projections: Interest saved, tenure reduced

πŸ”’ Security & Privacy

  • All calculations performed client-side and server-side
  • No data storage or tracking
  • No personal information collected
  • CORS enabled for secure API communication

πŸ“± Responsive Design

  • Mobile-first approach
  • Tablet-optimized layouts
  • Desktop-enhanced experience
  • Touch-friendly controls
  • Print-ready reports

🚧 Future Enhancements

  • PDF report generation
  • Email/SMS sharing
  • Scenario saving (local storage)
  • Multi-currency support
  • Loan comparison with up to 5 scenarios
  • Amortization heatmap visualization
  • AI-powered loan recommendations
  • Integration with real-time interest rates
  • Multi-language support
  • Dark mode theme

🀝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

πŸ“„ License

This project is licensed under the MIT License.

πŸ“š Additional Documentation

Deployment Guides

Technical Documentation

Project Management

πŸ“ž Support

For issues, questions, or suggestions, please open an issue on GitHub.

⚠️ Disclaimer

This calculator provides estimates only. Actual loan terms, EMIs, and tax benefits may vary based on lender policies, individual circumstances, and current tax laws. Please consult with financial advisors and tax professionals for personalized advice.

πŸ™ Acknowledgments

  • Built with React and FastAPI
  • Charts powered by Recharts
  • Icons and UI inspired by modern design principles

Made with ❀️ for better financial planning

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages