A powerful stealth windows application that analyzes coding problem screenshots and generates solutions using Google's Gemini AI with advanced diff-based debugging and completely hidden from screenshare.
Note
Prebuilt Release Available: Download the latest prebuilt version from the Releases page.
Important
API Key Required: You'll need a Google Gemini API key to use this application. Get your free API key from Google AI Studio
Completely Invisible: Completely invisible coding space only visible to you.Screenshot Capture: Capture coding problems/MCQs with global keyboard shortcutsSmart Debugging: Fix errors with side-by-side diff viewMulti-Language Support: Python, C++, Java, JavaScript, React, Go, Rust and CustomAI-Powered Solutions: Generate complete solutions with approach and complexity analysisMultiple Question Types: Supports coding problems and multiple-choice questionsSyntax Highlighting: Beautiful code display with Ace Editor and Monokai theme
- Node.js 16+ (Download Node.js)
- Google Gemini API Key (Get API Key)
-
Clone the repository
git clone https://github.com/Max-Eee/ShadowIDE cd ShadowIDE -
Install dependencies
npm install
-
Configure API Key (Optional)
You can either:
- Set it via the UI after launching the app (recommended)
- Create a
.envfile in the root directory:GEMINI_API_KEY=your_gemini_api_key_here
-
Run the application
Development mode:
npm start
Build for production:
npm run dist
The built application will be in the
distfolder.
- Click the Settings button (⚙️) in the top bar
- Paste your Gemini API key
- Click Save
- The app will show your masked key and source (environment or settings)
- Click the Settings button
- Choose your preferred language from the dropdown
- Available languages: Python, C++, Java, JavaScript, React
- Navigate to the coding problem you want to solve
- Press Ctrl H to capture a screenshot
- Select the area containing the problem
- Repeat for multiple questions if needed
- Press Ctrl Enter to process all captured screenshots
- Wait for the AI to analyze and generate solutions
- View the solution with:
- Approach: Step-by-step explanation
- Code: Syntax-highlighted solution
- Complexity: Time and space complexity analysis
- If you encounter an error in the generated code
- Take a screenshot of the error message
- Press Ctrl H to take screenshot of errors or changes
- Press Ctrl Enter to debug
- View side-by-side diff showing:
- Left: Original code with error
- Right: Fixed code
- Approach: Explanation of the fix
- Complexity: Updated complexity analysis
- Press Ctrl G to clear all screenshots and start fresh
| Shortcut | Action |
|---|---|
| Ctrl H | Capture screenshot |
| Ctrl Enter | Process screenshots & generate solution |
| Ctrl G | Reset/clear all screenshots |
| Ctrl B | Toggle UI visibility (kept for compatibility) |
ShadowIDE/
├── main.js # Electron main process
├── preload.js # Secure IPC bridge
├── index.html # Main UI
├── ProcessingHelper.js # AI processing logic
├── ScreenshotHelper.js # Screenshot capture system
├── ipcHandlers.js # IPC communication handlers
├── shortcuts.js # Global keyboard shortcuts
├── store.js # Encrypted data storage
├── url.js # URL utilities
├── handle.js # Window management
├── package.json # Dependencies & scripts
└── README.md # This file
This project is licensed under the MIT License - see the LICENSE file for details.
If you encounter any issues or have questions:
- Open an issue
- Check existing issues for solutions
- Star ⭐ the repository if you find it useful!