|
1 |
| -# LeetCode Helper Extension |
| 1 | +# LeetCode Helper Chrome Extension |
2 | 2 |
|
3 |
| -A Chrome extension to help users get step-by-step AI assistance while solving LeetCode problems. |
| 3 | +LeetCode Helper is a Chrome Extension designed to supercharge your LeetCode problem-solving experience with instant, AI-powered guidance. It seamlessly detects the current LeetCode problem, sends the details to a powerful backend, and returns step-by-step solutions—all without leaving your browser. |
4 | 4 |
|
5 |
| -## ✅ Current Features |
6 |
| -- Simple popup interface |
7 |
| -- Button that will trigger AI help (to be added) |
| 5 | +--- |
8 | 6 |
|
9 |
| -## 🔧 Setup Instructions |
10 |
| -1. Clone the repo |
11 |
| -2. Go to `chrome://extensions` |
12 |
| -3. Enable Developer Mode |
13 |
| -4. Click "Load unpacked" and select this folder |
| 7 | +## 🧩 Features |
14 | 8 |
|
15 |
| -## 🔜 Coming Soon |
16 |
| -- Integration with Django backend |
17 |
| -- Gemini AI support |
18 |
| -- Content script for reading problem content |
| 9 | +- **Auto-Detects LeetCode Problems:** Instantly grabs the title and URL of the LeetCode problem you're viewing. |
| 10 | +- **AI-Powered Guidance:** Sends problem details to a deployed Django REST API, which uses an LLM (Gemini or OpenAI) to generate step-by-step solutions. |
| 11 | +- **Clean UI:** Displays AI responses in Markdown, rendered beautifully in the extension popup using [marked.min.js](https://marked.js.org/). |
| 12 | +- **No Local Setup Needed:** Backend is fully managed and deployed on [Render.com](https://render.com). |
| 13 | + |
| 14 | +--- |
| 15 | + |
| 16 | +## 🚀 Project Overview |
| 17 | + |
| 18 | +LeetCode Helper streamlines your LeetCode workflow. With a single click, you get expert-level guidance directly from a large language model, tailored to the problem you're working on. No more context switching or copy-pasting—just solutions when you need them. |
| 19 | + |
| 20 | +--- |
| 21 | + |
| 22 | +## 🛠️ How to Load as an Unpacked Extension |
| 23 | + |
| 24 | +1. Download or clone this repository. |
| 25 | +2. Open Google Chrome and go to `chrome://extensions/`. |
| 26 | +3. Enable **Developer mode** (top right). |
| 27 | +4. Click **Load unpacked** and select the `extension` folder inside the project. |
| 28 | +5. The LeetCode Helper icon should appear in your extensions bar. |
| 29 | + |
| 30 | +--- |
| 31 | + |
| 32 | +## ⚡ How to Use the Extension |
| 33 | + |
| 34 | +1. Navigate to any [LeetCode](https://leetcode.com/) problem page. |
| 35 | +2. Click the **LeetCode Helper** extension icon. |
| 36 | +3. The extension will auto-fill the problem title and URL. |
| 37 | +4. Click **Get Guidance**. |
| 38 | +5. See step-by-step AI-generated guidance appear instantly in the popup! |
| 39 | + |
| 40 | +> **Note:** No need to run any local servers—everything works out of the box. |
| 41 | +
|
| 42 | +--- |
| 43 | + |
| 44 | +## 🏗️ Architecture Overview |
| 45 | + |
| 46 | +``` |
| 47 | ++---------------------+ +------------------------------+ +-----------------------------+ |
| 48 | +| Chrome Extension | <------> | Django REST API (Render.com)| <-------> | Large Language Model (LLM) | |
| 49 | +| (popup.html/js) | | Endpoint: /api/solve/ | | (Gemini, OpenAI, etc.) | |
| 50 | ++---------------------+ +------------------------------+ +-----------------------------+ |
| 51 | + | | |
| 52 | + |------------------- User initiates a request -------------------------------------| |
| 53 | +``` |
| 54 | + |
| 55 | +- **Frontend:** Presents popup UI, grabs problem info, and renders Markdown via marked.js. |
| 56 | +- **Backend:** |
| 57 | + The backend is built with Django and Django REST Framework, deployed on [Render.com](https://render.com) for seamless scalability and reliability. It exposes a single endpoint at `/api/solve/` and handles communication with the LLM. |
| 58 | +- **LLM:** Generates step-by-step guidance tailored to the problem context. |
| 59 | + |
| 60 | +--- |
| 61 | + |
| 62 | +### Key Backend Features |
| 63 | + |
| 64 | +- **Integration with LLMs:** Utilizes APIs from LLM providers (e.g., Gemini, OpenAI) to generate detailed solutions and explanations. |
| 65 | +- **Markdown Output:** Formats responses in Markdown for easy rendering on the frontend. |
| 66 | +- **Error Handling:** Returns user-friendly error messages and backend status codes if the AI cannot generate guidance. |
| 67 | +- **Scalability:** Hosted on Render.com for auto-scaling and high availability. |
| 68 | +- **Security:** Basic request validation and sanitization are performed to ensure safe API usage. |
| 69 | +- **Production Ready:** Includes Procfile and render.yaml for cloud deployment, and `.gitignore` for environment management. |
| 70 | +- **Extensible:** Modular structure for easy addition of endpoints or support for other coding platforms. |
| 71 | + |
| 72 | +> The backend is fully managed—no user setup required. All requests are handled securely and efficiently in the cloud. |
| 73 | +
|
| 74 | +--- |
| 75 | + |
| 76 | +## 📸 Screenshots |
| 77 | + |
| 78 | +> _Insert your screenshots below by replacing the placeholders:_ |
| 79 | +
|
| 80 | + |
| 81 | + |
| 82 | + |
| 83 | +--- |
| 84 | + |
| 85 | +## 📂 Folder Structure |
| 86 | + |
| 87 | +``` |
| 88 | +Leetcode-Helper/ |
| 89 | +├── extension/ # Chrome Extension source code |
| 90 | +│ ├── icon.png |
| 91 | +│ ├── manifest.json |
| 92 | +│ ├── marked.min.js |
| 93 | +│ ├── popup.css |
| 94 | +│ ├── popup.html |
| 95 | +│ └── popup.js |
| 96 | +├── leetcode backend/ |
| 97 | +│ ├── api/ |
| 98 | +│ ├── backend/ |
| 99 | +│ ├── .gitignore |
| 100 | +│ ├── Procfile |
| 101 | +│ ├── db.sqlite3 |
| 102 | +│ ├── manage.py |
| 103 | +│ ├── render.yaml |
| 104 | +│ └── requirements.txt |
| 105 | +├── screenshots/ |
| 106 | +``` |
| 107 | + |
| 108 | +--- |
| 109 | + |
| 110 | +## 🚧 Future Improvements & Contribution Guidelines |
| 111 | + |
| 112 | +### Future Plans |
| 113 | +- Support for more coding platforms (HackerRank, Codeforces, etc.) |
| 114 | +- Chrome Web Store publication |
| 115 | +- Enhanced error handling and retry logic |
| 116 | +- User authentication and saved guidance history |
| 117 | + |
| 118 | +### Contributing |
| 119 | +Contributions are welcome! Please open an issue or submit a pull request with a clear description of your changes. |
| 120 | + |
| 121 | +--- |
| 122 | + |
| 123 | +## 👥 Contributors |
| 124 | + |
| 125 | +- [jydv402 (Jayadev B S)](https://github.com/jydv402) |
| 126 | +- [SHIBINSHA02 (Shibinsha)](https://github.com/SHIBINSHA02) |
| 127 | + |
| 128 | +--- |
0 commit comments