Skip to content

ShadowIDE: An invisible AI code solver that captures problem screenshots and generates solutions using Google Gemini. Features a stealth overlay hidden from screenshare, multi-language support, and smart diff-based debugging.

License

Notifications You must be signed in to change notification settings

Max-Eee/ShadowIDE

Repository files navigation

ShadowIDE Your Invisible AI Code Solver

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.

Preview

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

✨ Key Features

  • Completely Invisible: Completely invisible coding space only visible to you.
  • Screenshot Capture: Capture coding problems/MCQs with global keyboard shortcuts
  • Smart Debugging: Fix errors with side-by-side diff view
  • Multi-Language Support: Python, C++, Java, JavaScript, React, Go, Rust and Custom
  • AI-Powered Solutions: Generate complete solutions with approach and complexity analysis
  • Multiple Question Types: Supports coding problems and multiple-choice questions
  • Syntax Highlighting: Beautiful code display with Ace Editor and Monokai theme

🚀 Quick Start Guide

Prerequisites

Installation

  1. Clone the repository

    git clone https://github.com/Max-Eee/ShadowIDE
    cd ShadowIDE
  2. Install dependencies

    npm install
  3. Configure API Key (Optional)

    You can either:

    • Set it via the UI after launching the app (recommended)
    • Create a .env file in the root directory:
      GEMINI_API_KEY=your_gemini_api_key_here
  4. Run the application

    Development mode:

    npm start

    Build for production:

    npm run dist

    The built application will be in the dist folder.

📖 How to Use

Step 1: Set Your API Key

  1. Click the Settings button (⚙️) in the top bar
  2. Paste your Gemini API key
  3. Click Save
  4. The app will show your masked key and source (environment or settings)

Step 2: Select Language

  1. Click the Settings button
  2. Choose your preferred language from the dropdown
  3. Available languages: Python, C++, Java, JavaScript, React

Step 3: Capture Screenshots

  1. Navigate to the coding problem you want to solve
  2. Press Ctrl H to capture a screenshot
  3. Select the area containing the problem
  4. Repeat for multiple questions if needed

Step 4: Generate Solution

  1. Press Ctrl Enter to process all captured screenshots
  2. Wait for the AI to analyze and generate solutions
  3. View the solution with:
    • Approach: Step-by-step explanation
    • Code: Syntax-highlighted solution
    • Complexity: Time and space complexity analysis

Step 5: Debug Errors (Optional)

  1. If you encounter an error in the generated code
  2. Take a screenshot of the error message
  3. Press Ctrl H to take screenshot of errors or changes
  4. Press Ctrl Enter to debug
  5. View side-by-side diff showing:
    • Left: Original code with error
    • Right: Fixed code
    • Approach: Explanation of the fix
    • Complexity: Updated complexity analysis

Step 6: Reset

  • Press Ctrl G to clear all screenshots and start fresh

⌨️ Keyboard Shortcuts

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)

📁 Project Structure

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

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

📞 Support

If you encounter any issues or have questions:

  • Open an issue
  • Check existing issues for solutions
  • Star ⭐ the repository if you find it useful!

About

ShadowIDE: An invisible AI code solver that captures problem screenshots and generates solutions using Google Gemini. Features a stealth overlay hidden from screenshare, multi-language support, and smart diff-based debugging.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published