GeeksCode is a high-performance, feature-rich code editor built with Electron, React, and Node.js. It is designed for competitive programmers and developers who require a streamlined, AI-integrated workflow. This editor combines a modern UI with powerful tools like an integrated terminal, Codeforces problem explorer, AI-powered assistance, and automated test case generation.
- Satvik Garg (B24219)
- Pranab Pandey (B24148)
- Shivam Kumar (B24220)
- Shivang Tripathi (B24221)
- Monaco Editor Integration: Full-featured code editing experience with syntax highlighting and intelligent code completion.
- Integrated Terminal: Seamlessly run commands and scripts without leaving the editor.
- File Explorer: Efficiently manage your project files and folders.
- Tab Management: Work on multiple files simultaneously with an intuitive tab system.
- Codeforces Integration: Browse, filter, and view Codeforces problems directly within the sidebar.
- Problem Viewer: Read problem statements and submit solutions.
- Quick Open: Rapidly navigate between files and symbols.
- AI Chat Assistant: Built-in AI chat for code explanations, debugging, and generation.
- RAG (Retrieval-Augmented Generation): Context-aware AI responses based on your project codebase.
- Test Case Generator: Automatically generate input/output test cases for your code using AI. Supports custom constraints (e.g., Max Input Length).
- Code Runner: Execute your code instantly with a single click.
- Cpp/Header Search: Specialized search panel to quickly find text within
.cpp,.h,.hpp, and.cfiles. - Real-time Filtering: Fast search results with file preview snippets.
Ensure you have Node.js and Yarn installed on your system.
# Clone the repository
git clone https://github.com/programmingGod-byte/GeeksCode
# Navigate to the project directory
cd GeeksCode
# Install dependencies
yarn installTo start the application in development mode:
yarn startThis command concurrently runs the Vite development server and the Electron application.
To create a production build for your operating system:
# General build
yarn build
# Linux AppImage build
yarn build:linuxGeeksCode's AI capabilities can be enhanced with custom models. You can use Smolify.ai to create specialized, lightweight models tailored to your specific coding needs.
Example Models We've Created:
-
Code Helper Model: Optimized for code assistance and debugging
-
Text-to-Code Model: Specialized for converting natural language descriptions into code
- Visit Smolify.ai to create your custom model
- Train the model on your specific use case (competitive programming, algorithm implementation, etc.)
- Export and integrate the model with GeeksCode's AI assistant
- Enjoy personalized AI assistance tailored to your coding style and requirements
Benefits of Custom Models:
- Faster inference times with smaller model sizes
- Domain-specific knowledge (e.g., competitive programming patterns)
- Reduced API costs by running models locally
- Privacy-focused solution for sensitive codebases
Before running GeeksCode, you may need to configure your antivirus or security software:
- Gatekeeper may prevent the app from opening with a message: "GeeksCode cannot be opened because it is from an unidentified developer"
- Recommended actions:
- Right-click the app → Select "Open" → Click "Open" in the dialog
- Or: System Preferences → Security & Privacy → Click "Open Anyway"
- You may need to temporarily disable Gatekeeper:
sudo spctl --master-disable(re-enable after:sudo spctl --master-enable)
- Generally fewer issues, but ensure the AppImage has execute permissions:
chmod +x GeeksCode.AppImage
Why these warnings occur: GeeksCode requires elevated permissions for terminal access, file operations, and code compilation/execution - features essential for a development environment. These capabilities can trigger security software designed to prevent unauthorized system access.
Safety Note: Always download GeeksCode from the official GitHub repository to ensure you're running authentic, unmodified code.
- src/: React frontend source code.
- components/: UI components (Sidebar, Editor, Terminal, etc.).
- utils/: Utility functions and helper classes.
- electron/: Main process logic (main.js, preload.js).
- dist/: Production build artifacts.
- Electron: Cross-platform desktop application framework.
- React: Frontend library for building user interfaces.
- Vite: Fast build tool and development server.
- Monaco Editor: The code editor that powers VS Code.
- Tailwind CSS: Utility-first CSS framework for styling.
- Node-pty: Terminal emulation.
- Smolify.ai: Custom AI model creation and optimization.
This project is licensed under the MIT License.
Need Help? If you encounter issues with antivirus software or application permissions, please open an issue on our GitHub repository with details about your operating system and security software.