FixeQD/ExamAssist
AI cheating extension to pass tests ;)
๐ง ExamAssist - AI Test Helper
Browser extension for capturing screenshots and analyzing test questions using AI. Supports Chrome, Edge, Brave, and Firefox.
๐ Description
ExamAssist is a Chrome extension that allows you to:
- Select an area on a page and copy it as an image to the clipboard
- Analyze test questions using AI (Pollinations API)
- Automatically recognize question types (single choice, multiple choice, text)
- Receive answers in your selected language (Polish/English)
- Bypass testportal.pl/testportal.net protections
โจ Features
- Area Selection: Click the extension icon and select any area on the page
- AI Analysis: Automatic analysis of test questions from images
- Clipboard Copy: Image is automatically copied to the clipboard
- Answer Modes: Recognition of different question types (text/select_one/multi_select)
- Multilingual: Full support for Polish and English languages (UI and AI prompts)
- Security Bypass: Bypass testportal.pl protections
๐ Installation
Requirements
- Node.js (version 16 or newer)
- Chrome/Edge/Brave (supported Chromium browsers) OR Firefox (version 109 or newer)
Installation Steps
- Clone the repository
git clone https://github.com/FixeQD/ExamAssist.git
cd ExamAssist- Install dependencies
npm install- Build the extension
For Chrome/Edge/Brave:
# Standard build
npm run build
# Build with obfuscation
npm run build:obfuscateFor Firefox:
# Standard build
npm run build:firefox
# Build with obfuscation
npm run build:firefox:obfuscate- Load into browser
Chrome/Edge/Brave:
- Open
chrome://extensions/ - Enable "Developer mode"
- Click "Load unpacked"
- Select the
distfolder from the project
Firefox:
- Open
about:debugging#/runtime/this-firefox - Click "Load Temporary Add-on"
- Navigate to the
dist-firefoxfolder and select themanifest.jsonfile - Note: In Firefox, temporary add-ons are removed when you close the browser. For permanent installation, you need to sign the extension through Mozilla Add-ons.
โ๏ธ Configuration
Enabling AI
By default, AI features are turned off to keep the extension discreet and minimal. To enable AI analysis:
- Right-click the extension icon and select "Options".
- In the bottom-right corner of the Options page there's a subtle AI toggle (a small floating control).
- Hover to reveal it and click to turn on AI features.
- When AI is enabled, the Model dropdown and (if required) the API Key fields become available.
- If the selected model's tier requires an API key (e.g. "seed"), you'll need to enter it to use that model.
- If the toggle is off, the extension will act as a standard screenshot tool and simply copy the cropped image to your clipboard.
If you want AI to be enabled automatically on install, you can toggle it on in the Options page after installing the extension.
Note: Not all AI models require an API key - some models are public/anonymous and can be used without a key. When you select a model in the Options page, the UI will display the model's tier; models with the "seed" tier require an API key while others may not.
Language Selection
The extension supports full internationalization (i18n):
- UI Language: All interface elements (buttons, labels, messages) are translated
- AI Prompts: The AI system receives instructions in the selected language
- AI Responses: The AI provides answers in the selected language
Supported languages:
- Polish (Polski): Full UI and AI prompts in Polish
- English: Full UI and AI prompts in English
To change the language, go to the Options page and select your preferred language from the dropdown menu.
๐ Usage
Basic Usage
- Click the extension icon in the Chrome toolbar
- Select an area on the page you want to capture
- Automatic analysis: If you have an API key configured, you'll receive:
- Detected question
- Answer type
- Suggested answer
AI Analysis Result
The extension returns data in JSON format:
{
"question": "detected question",
"answer_type": "text|select_one|multi_select",
"answer": "answer"
}Answer Types
- text: Open-ended questions requiring text answers
- select_one: Single choice questions (A, B, C, D)
- multi_select: Multiple choice questions (select all correct)
๐๏ธ Project Structure
ai-cheat/
โโโ src/
โ โโโ background.js # Main extension logic
โ โโโ content.js # Content script
โ โโโ bypass-inject.js # Testportal bypass
โ โโโ options.js # Options page
โ โโโ options.html # Options page UI
โ โโโ locales/ # Translation files
โ โโโ pl.json # Polish translations
โ โโโ en.json # English translations
โโโ build.js # Build script
โโโ manifest.json # Chrome extension manifest
โโโ manifest_firefox.json # Firefox extension manifest
โโโ package.json # npm dependencies
โโโ LICENSE # MIT License
๐จ Build Scripts
Chrome/Edge/Brave:
# Build without obfuscation
npm run build
# Build with obfuscation
npm run build:obfuscateFirefox:
# Build without obfuscation
npm run build:firefox
# Build with obfuscation
npm run build:firefox:obfuscateWhat Does Building Do?
- Compiles JavaScript files using esbuild
- (Optionally) Obfuscates code using javascript-obfuscator
- Copies the appropriate manifest file (manifest.json for Chrome, manifest_firefox.json for Firefox)
- Copies static files (options.html, LICENSE, README.md)
- Creates
dist/folder (Chrome) ordist-firefox/folder (Firefox) with ready extension
๐ Security and Privacy
- API Key: Stored securely in Browser Storage API (Chrome Storage API / Firefox Storage API)
- Permissions: Extension requires minimal permissions:
activeTab: Access to active tabscripting: Script injectionstorage: API key storage
- Host Permissions: Access only to testportal.pl/net and Pollinations API
๐ API
Pollinations AI API
The extension uses Pollinations API for image analysis:
- Endpoint:
https://text.pollinations.ai/openai/v1/chat/completions - Model:
openai(If I'm right then it'sOpenAI GPT-5 Nano) - Format: OpenAI-compatible API
๐ Troubleshooting
Extension Not Working
- Chrome/Edge/Brave: Check if the extension is enabled in
chrome://extensions/ - Firefox: Check if the extension is enabled in
about:addons - Reload the page after installing the extension
- Check the browser console (F12) for errors
AI Not Returning Answers
- Check if you have an API key configured in options
- Check your internet connection
- Verify that the API key is correct
Image Not Being Copied
- Check clipboard permissions in the browser
- Try selecting a larger area (min. 10x10 px)
๐ License
MIT License - see LICENSE file
โ ๏ธ Disclaimer
This tool was created solely for educational purposes. The user bears full responsibility for how this extension is used. The author is not responsible for misuse of this software.
Note
README.md made by AI lol