Skip to content

Archisman-NC/AltCred

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

132 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AltCred - AI-Driven Alternative Credit Scoring

AltCred is a financial inclusion platform that uses alternative data points to generate credit scores for individuals with little to no credit history. By analyzing factors like employment stability, income patterns, and financial discipline, AltCred provides a fair and dynamic assessment of creditworthiness.

🚀 Features

  • Financial Assessment Engine: A comprehensive 10-point questionnaire capturing alternative data (income stability, savings buffer, digital behavior).
  • ML Scoring Model: A weighted algorithmic engine that processes raw inputs into a normalized FICO-like score (300-850).
  • Real-time Dashboard: Visualizes credit scores with color-coded risk categories and detailed factor breakdowns.
  • Secure Authentication: JWT-based Login and Signup system with protected routes.
  • Responsive Design: Modern, dark-themed UI built with Next.js and Framer Motion.

🛠️ Tech Stack

  • Frontend: Next.js (Pages Router), React, Tailwind CSS, Framer Motion
  • Backend: Node.js, Express.js
  • Database: Supabase (PostgreSQL)
  • Authentication: JWT (JSON Web Tokens)
  • ML/Logic: Custom Weighted Scoring Algorithm (Node.js)

⚙️ Installation & Setup

Prerequisites

  • Node.js (v16+)
  • NPM
  • A Supabase account

1. Clone the Repository

git clone https://github.com/Archisman-NC/AltCred.git
cd AltCred

2. Setup Environment Variables

Create a .env file in the backend directory:

PORT=4000
SUPABASE_URL=your_supabase_url
SUPABASE_SERVICE_ROLE_KEY=your_supabase_service_role_key
JWT_ACCESS_SECRET=your_random_secret_string
JWT_REFRESH_SECRET=your_random_secret_string

Create a .env.local file in the frontend directory:

NEXT_PUBLIC_API_URL=http://localhost:4000

Database Schema: Run the SQL script located in backend/src/modules/credit-score/schema.sql in your Supabase SQL Editor to create the necessary tables.

3. Quick Start

In the root, run the following command on CLI

npm run install:all
npm run dev:all

And you are all set.

4. Starting Backend

Navigate to the backend folder and install dependencies:

cd backend
npm install
npm run start

5. Starting Frontend

Navigate to the frontend folder and install dependencies:

cd ../frontend
npm install
npm run dev

Visit http://localhost:4000 to view the app.

🧠 How the Scoring Works

The credit score is calculated based on 4 key pillars:

  1. Payment History (35%): Analyzes past loan behavior and bill payment discipline.
  2. Financial Stability (25%): Evaluates savings buffer and expense ratios.
  3. Income Factors (20%): Considers income amount and stability.
  4. Responsibility (20%): Looks at education level and number of dependents.

The raw answers are normalized to a 0-1 scale and processed through a weighted algorithm to generate a score between 300 and 850.

📂 Project Structure

AltCred/
├── backend/
│   ├── src/
│   │   ├── modules/
│   │   │   ├── auth/          # Authentication logic
│   │   │   ├── credit-score/  # ML Model & Scoring logic
│   │   │   └── intake/        # Assessment form handling
│   │   └── server.js          # Entry point
├── frontend/
│   ├── src/
│   │   ├── pages/             # Next.js Pages (Dashboard, Login, etc.)
│   │   ├── components/        # Reusable UI components
│   │   └── utils/             # API clients & helpers
└── docs/                      # Detailed Documentation

📚 Documentation

For more detailed information, please refer to the following documentation:

  • API Endpoints: Comprehensive list of available API routes and their usage.
  • Architecture: High-level overview of the system architecture and design decisions.
  • Data Models: Detailed description of the database schema and data structures.

🤝 Contributing

Contributions are welcome! Please follow these steps to contribute:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature/YourFeature).
  3. Commit your changes (git commit -m 'Add some feature').
  4. Push to the branch (git push origin feature/YourFeature).
  5. Open a Pull Request.

📄 License

This project is licensed under the MIT License.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •