https://github.com/adityasworks/ai_teaching_assistant
AI powered Teaching Assistant which helps in learning DSA
https://github.com/adityasworks/ai_teaching_assistant
Last synced: about 1 year ago
JSON representation
AI powered Teaching Assistant which helps in learning DSA
- Host: GitHub
- URL: https://github.com/adityasworks/ai_teaching_assistant
- Owner: AdityasWorks
- Created: 2025-03-01T21:31:43.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-03-02T16:05:05.000Z (over 1 year ago)
- Last Synced: 2025-03-02T16:33:22.194Z (over 1 year ago)
- Language: JavaScript
- Size: 5.86 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# AI Teaching Assistant
## Overview
The **AI Teaching Assistant** is a chat-based application designed to help users understand **Data Structures and Algorithms (DSA)** problems. It allows users to submit **LeetCode problem links** along with their queries, and the assistant provides guidance, hints, and conceptual explanations using an **LLM (like GPT or Gemini)**βwithout directly giving away the solution.
## Live Demo
Check out the live version of the AI Teaching Assistant: [AI Teaching Assistant](https://ai-teaching-assistant-jck3.vercel.app/)
## Features
- π **Chat Interface**: Users can ask questions about DSA problems in a friendly, conversational UI.
- π **LeetCode Link Support**: Users can paste a **LeetCode problem link**, and the assistant will tailor its guidance accordingly.
- π€ **LLM Integration**: Uses GPT/Gemini to generate responses focused on **hints, intuition-building, and problem-solving approaches**.
- β³ **Progressive Hints System**:
- High-level strategy hints
- Algorithmic approach hints
- Framework for problem-solving
- Pseudocode (only if necessary)
- π **Encouraging Learning**: Helps users reflect on their approach, time complexity, and problem-solving strategies.
## Tech Stack
- **Frontend**: React.js
- **Backend**: Node.js (or any API handling the LLM interaction)
- **LLM Integration**: OpenAI GPT / Google Gemini API
## Setup Instructions
### 1οΈβ£ Clone the Repository
```sh
git clone https://github.com/AdityasWorks/ai-teaching-assistant.git
cd ai-teaching-assistant
```
### 2οΈβ£ Install Dependencies
```sh
npm install
```
### 3οΈβ£ Set Up API Keys
Create a `.env` file in the project root and add:
```sh
VITE_GEMINI_API=your_llm_api_key
```
### 4οΈβ£ Start the Application
```sh
npm run dev
```
The app will run at `http://localhost:3000/`.
## How It Works
1. **User enters a DSA question** or pastes a **LeetCode link** in the input box.
2. **LLM processes the query** and provides **hints, strategies, and thought-provoking questions** instead of direct answers.
3. The assistant encourages **problem-solving reflection** to enhance learning.
4. Users can **continue the conversation** for further clarification.
## Example Prompt Behavior
If a user submits the **House Robber Problem (LeetCode 198)**, the assistant might respond with:
β
**"This problem is about Dynamic Programming. Can you think of a way to break it down into smaller subproblems?"**
β
**"Have you considered storing previous results to avoid recomputation?"**
β
**"Try solving it with recursion first. What happens if you memoize the results?"**
Instead of just providing the DP solution outright.
## Contribution
Feel free to fork the repo and submit pull requests! π
## License
MIT License