Skip to content

Latest commit

 

History

21 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🧠 AI Antigenic Drift Predictor 🦠🧬

This project is a web application that predicts viral mutations and their potential impact, focusing on diseases like COVID-19. It provides an interactive world map visualizing disease data, allows users to upload research papers, and displays predictions about viral mutations. The application aims to provide insights into viral evolution and potential risks.


🚀 Key Features

  • Interactive World Map: Visualizes COVID-19 (or other disease) data on an interactive map, allowing users to zoom, pan, and hover over countries to view data.
  • Time Series Data: Displays time series data for selected countries, showing both cumulative totals and daily new cases.
  • Mutation Prediction: Uses AI models to predict viral mutations and assess their potential impact, providing risk assessments and confidence levels.
  • Research Paper Upload: Allows users to upload and analyze research papers related to viral diseases.
  • Data Aggregation: Aggregates prediction data for specific viruses, calculating combined probability, overall risk, and confidence.
  • Backend API: Provides API endpoints for retrieving COVID-19 data, research papers, and prediction results.
  • Supabase Integration: Uses Supabase for database management and data storage.

🧬 AI & Machine Learning Stack

  • Frameworks & Libraries:

    • 🧩 PyTorch – For deep learning model training and inference.
    • 🧠 ESM (Evolutionary Scale Modeling) – Protein language model used for predicting mutations and understanding structural impacts.
    • 🔬 Biopython – For sequence parsing, analysis, and biological data handling.
    • 📊 scikit-learn – For data preprocessing, feature extraction, and additional model evaluation.
    • 🧮 NumPy / Pandas – For efficient data handling and preprocessing.
    • 🧰 Matplotlib / Plotly – For visualizing mutation prediction outputs and trends.
  • Model Capabilities:

    • Predicts antigenic drift by analyzing historical protein sequence variations.
    • Computes mutation probability, structural stability changes, and antigenicity scores.
    • Integrates results into a risk assessment system for visualization on the frontend.

🛠️ Tech Stack

Frontend

  • React
  • TypeScript
  • Vite
  • React Router
  • D3.js
  • TopoJSON
  • GSAP
  • lucide-react
  • CSS

Backend

  • Node.js
  • Express
  • Mongoose
  • MongoDB
  • CORS
  • dotenv

Database

  • MongoDB
  • Supabase

AI Tools

  • PyTorch
  • ESM Model (Protein Language Model)
  • Biopython
  • scikit-learn
  • NumPy / Pandas

Build Tools

  • npm

📦 Getting Started

Prerequisites

  • Node.js (>=18)
  • npm (>=8)
  • MongoDB
  • Supabase account
  • Python 3.9+ (for AI model execution)
  • Environment variables configured (see .env.example in both Frontend and Backend directories)

Installation

  1. Clone the repository

    git clone <repository_url>
    cd <repository_directory>
  2. Install frontend dependencies

    cd Frontend
    npm install
  3. Install backend dependencies

    cd Backend
    npm install
  4. (Optional) Setup AI environment

    cd AI
    pip install -r requirements.txt
  5. Configure environment variables

    • Create .env files in both the Frontend and Backend directories.
    • Add the necessary environment variables (Supabase URL, Supabase Anon Key, MongoDB URI, etc.).
    • See .env.example for the required variables.

🧩 Running Locally

  1. Start the backend server

    cd Backend
    npm run dev
  2. Start the frontend server

    cd Frontend
    npm run dev

    The frontend will be accessible at http://localhost:5173

  3. (Optional) Run AI module

    cd AI
    python predict.py

💻 Usage

  1. Open the web app in your browser.
  2. Explore the interactive world map to visualize global COVID-19 or mutation data.
  3. Select a country to view detailed time series trends.
  4. Visit the Predict section to view viral mutation predictions.
  5. Upload and analyze research papers in the Research section.

📂 Project Structure

AI-Antigenic-Drift-Predictor/ ├── Backend/ │ ├── src/ │ │ ├── app.js │ │ ├── server.js │ │ ├── routes/ │ │ ├── controllers/ │ │ ├── models/ │ │ ├── services/ │ ├── package.json │ ├── .env.example ├── Frontend/ │ ├── src/ │ │ ├── main.tsx │ │ ├── App.tsx │ │ ├── components/ │ │ ├── lib/ │ ├── vite.config.ts │ ├── tsconfig.json │ ├── package.json │ ├── .env.example ├── AI/ │ ├── models/ │ │ ├── esm_model.py # ESM-based mutation predictor │ ├── utils/ │ │ ├── sequence_parser.py # Sequence and mutation handling │ ├── predict.py # Entry point for AI inference │ ├── requirements.txt ├── README.md

🔍 How the AI Model Works

  1. Sequence Input: The user uploads a viral protein sequence (e.g., Spike protein).
  2. Feature Extraction: ESM (Evolutionary Scale Modeling) generates embeddings representing biological and structural patterns.
  3. Mutation Simulation: The model predicts likely mutations based on historical drift and residue conservation.
  4. Risk Assessment: Each mutation is scored based on antigenicity and protein stability changes.
  5. Visualization: The results are aggregated and displayed with risk levels and confidence scores.

📸 Screenshots

(Add screenshots of the application here)


🤝 Contributing

Contributions are welcome!

  1. Fork the repository
  2. Create a new branch
  3. Commit your changes
  4. Push to your fork
  5. Submit a pull request

📝 License

This project is licensed under the MIT License.


💖 Thanks for exploring the AI Antigenic Drift Predictor!

About

This project is a web application that predicts viral mutations and their potential impact, focusing on diseases like COVID-19. It provides an interactive world map visualizing disease data, allows users to upload research papers, and displays predictions about viral mutations. The application aims to provide insights into viral evolution and risks

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages