Skip to content

EduGenie is an AI-powered academic assistant designed to help students easily access study resources, circulars, GPA calculators, and result tracking. Built with FastAPI, MongoDB, and React, it streamlines academic queries with multilingual support and smart search.

Notifications You must be signed in to change notification settings

harshakl03/EduGenie

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

80 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🧠 EduGenie - AI-Powered Educational Assistant

EduGenie is a modular system designed to provide personalized academic support for students by integrating a React frontend, Node.js backend, LangChain-based Python scripts, and Google Gemini LLM.


📁 Project Structure

├── BackEnd
├── FrontEnd
├── LangChain
└── PythonScripts

Node.js backend to connect frontend with APIs and Python scripts.

Frontend (React-based, not detailed here).

Jupyter notebooks to test Python scripts (LangChain + Gemini).

Finalized Python scripts hosted via FastAPI.

Create .env file under each folder

  1. Add MONGODB_URL, SERV_PORT, JWT_SECRET in .env file under BackEnd folder
  2. Add GEMINI_API_KEY in .env file under LangChain folder
  3. Add GEMINI_API_KEY in .env file under PythonScripts folder

⚙️ Backend Setup (Node.js)

Developed using Node.js, Express.js, and MongoDB for a RESTful API structure.
Implements secure authentication and scalable database integration.

  1. Navigate to the BackEnd folder:
cd BackEnd
  1. Install the required dependencies:
npm install
  1. Setup nodemon:
npm install -g nodemon
  1. Launch Node.js BackEnd:
nodemon index.js

🖥️ Frontend Setup (React.js)

Built using React.js with Tailwind CSS for styling and Vite as the build tool.

  1. Navigate to the FrontEnd folder:
cd FrontEnd
  1. Install the required dependencies:
npm install
  1. Lauch React.js FrontEnd:
npm run dev

🔬 LangChain + Jupyter Lab Environment Setup

This setup allows you to develop and test LangChain-based Python scripts using Gemini.

  1. Navigate to the LangChain folder:
cd LangChain
  1. Create a new Conda environment:
conda create --prefix ./EduGenie.env python=3.10
  1. Activate the environment:
conda activate ./EduGenie.env
  1. Install JupyterLab:
conda install jupyterlab
  1. Install required Python packages:
pip install PyMuPDF langchain langchain-google-genai google-generativeai langchain-community python-dotenv
  1. Launch JupyterLab:
jupyter lab

🚀 PythonScripts (FastAPI Backend)

The PythonScripts folder contains finalized Python APIs. These are designed to be hosted using FastAPI for production usage.

  1. Navigate to PythonScripts folder:
cd PythonScripts
  1. Create virtual environment:
python -m venv env
  1. Activate the environment:
./env/Scripts/activate
  1. Install required Python packages:
pip install uvicorn fastapi PyMuPDF langchain langchain-google-genai google-generativeai langchain-community python-dotenv
  1. Lauch FastAPI Backend:
uvicorn main:app --reload

About

EduGenie is an AI-powered academic assistant designed to help students easily access study resources, circulars, GPA calculators, and result tracking. Built with FastAPI, MongoDB, and React, it streamlines academic queries with multilingual support and smart search.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •