Rasheed
Khoshnaw

Software Engineer

Loan Eligibility Predictor

Project Overview

Deployed Site: https://loan-eligibility-predictor-frontend.onrender.com

GitHub Repo: https://github.com/gitRasheed/loan-eligibility-predictor


I developed a loan eligibility prediction system consisting of two main components: a machine learning model built with Python and scikit-learn, and a user-friendly web application created with React utilising that ML model with a Flask API. This project demonstrates my skills in data science, machine learning, and full-stack web development.


Part 1: Machine Learning Model Development

Data Exploration and Preprocessing

  • Utilized pandas and numpy for data manipulation and analysis.

  • Performed exploratory data analysis (EDA) to understand the dataset's characteristics.

  • Engineered new features such as loan-to-income ratio, EMI, and loan-to-assets ratio.

  • Applied log transformations to handle skewed numerical columns.

Model Selection and Optimization

  • Experimented with multiple algorithms including Logistic Regression, Random Forest, and XGBoost.

  • Utilized Optuna for hyperparameter tuning and model optimization.

  • Implemented feature selection techniques to improve model performance.

  • Evaluated models using cross-validation and metrics such as accuracy and classification report.

Final Model: Random Forest Classifier

  • Selected Random Forest as the final model due to its superior performance.

  • Fine-tuned hyperparameters including n_estimators, max_depth, min_samples_split, and min_samples_leaf.

  • Achieved high accuracy in predicting loan eligibility.

  • Used joblib to save the trained model and scaler for deployment.

Part 2: React Web Application

Frontend Development

  • Built a responsive single-page application using React and Next.js.

  • Implemented a user-friendly form for loan application input using React hooks (useState, useCallback, useMemo).

  • Created custom components such as CurrencyInput and Tooltip for enhanced user experience.

  • Utilized Framer Motion for smooth animations and transitions.

Backend Integration

  • Developed a serverless API route using Next.js API Routes.

  • Implemented a POST endpoint to handle loan eligibility checks.

  • Used child_process to execute the Python script for predictions.

Key Features

  • Interactive loan term selection and credit score slider.

  • Real-time input validation and error handling.

  • Animated eligibility result display.

  • Tooltips for providing additional information to users.

Styling and UI/UX

  • Employed Tailwind CSS for styling.

  • Used Framer Motion for smooth animations, enhancing user engagement.

Deployment and Performance

  • Deployed the application using Render.com

  • Optimized component rendering using React's useMemo and useCallback hooks.

Technologies Used

  • Python (pandas, numpy, scikit-learn, joblib)

  • React and Next.js

  • TypeScript

  • Tailwind CSS


This project showcases my ability to develop end-to-end machine learning solutions, from data analysis and model development to creating intuitive user interfaces.