Skip to content

anish-devgit/student-performance-predictor-ai

Repository files navigation

πŸŽ“ Student Performance Predictor AI

A Production-Grade End-to-End Machine Learning System for Educational Analytics.


πŸ“– About The Project

Student Performance Predictor AI is not just another data science scriptβ€”it's a full-stack, production-ready AI application engineered to provide actionable insights into student performance.

Built to bridge the gap between heavy machine learning models and intuitive user interfaces, this system processes over 20,000+ student records to identify the key drivers of academic success. Whether you are an educator, a student, or a developer, this platform offers a robust environment to explore educational data.

🎯 Key Features

  • 🧠 Advanced Predictive Engine: Powered by a finely-tuned Linear Regression model achieving 73% RΒ² Accuracy.
  • ⚑ High-Performance API: Built with FastAPI for sub-millisecond inference latency.
  • 🎨 Modern Dashboard: A stunning, responsive Dark Mode UI crafted with Next.js 14 and Tailwind CSS.
  • πŸ” Explainable AI (XAI): Understand why a prediction was made with detailed feature contribution breakdowns.
  • 🐳 Containerized & Portable: Fully Dockerized for "write once, run anywhere" deployment.

πŸ—οΈ Architecture

The system follows a modern microservices architecture:

graph TD
    User[πŸ‘€ User] -->|HTTPS| Client[πŸ’» Next.js Frontend]
    Client -->|JSON| API[⚑ FastAPI Backend]
    API -->|Inference| Model["🧠 ML Model (Scikit-Learn)"]
    API -->|Process| Pipeline[βš™οΈ Data Pipeline]
    Pipeline -->|Train/Test| Data[(πŸ“Š Student Data)]
Loading

πŸ› οΈ Tech Stack

Machine Learning & Data Science

  • Python 3.10: Core language.
  • Scikit-Learn: Model training and evaluation.
  • Pandas & NumPy: High-performance data manipulation.
  • Joblib: Model serialization.

Backend

  • FastAPI: Asynchronous web framework.
  • Uvicorn: ASGI server.
  • Pydantic: Data validation and settings management.

Frontend

  • Next.js 14: React framework for production.
  • Recharts: Composable charting library.
  • CSS Modules: Scoped styling.

DevOps

  • Docker: Containerization.
  • Docker Compose: Multi-container orchestration.

πŸš€ Getting Started

Prerequisites

  • Git
  • Docker Desktop (Recommended)
  • Node.js 18+ & Python 3.10+ (For manual setup)

🐳 Application Setup (Recommended)

The easiest way to run the entire stack is via Docker.

  1. Clone the repository

    git clone https://github.com/anish-devgit/student-performance-predictor-ai.git
    cd student-performance-predictor-ai
  2. Start the application

    docker-compose up --build
  3. Access the Application

πŸ’» Manual Setup

Click to verify manual installation steps

Backend

cd app/backend
pip install -r ../../requirements.txt
uvicorn main:app --reload

Frontend

cd app/frontend
npm install
npm run dev

πŸ›£οΈ Roadmap

  • Initial ML Model Training & Evaluation
  • FastAPI Backend Implementation
  • Next.js Frontend Dashboard
  • Advanced Models: Integrate Random Forest & XGBoost for higher accuracy.
  • User Auth: Add authentication for personalized student tracking.
  • PDF Reports: Auto-generate performance analysis reports.
  • Mobile App: React Native mobile counterpart.

See the open issues for a full list of proposed features (and known issues).


🀝 Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

Please view our Contributing Guidelines for more details.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ“œ License

Distributed under the MIT License. See LICENSE for more information.


πŸ‘₯ Contributors

Thanks to all the people who contribute!


Made with ❀️ by Anish Raj