Skip to content

Joseyosei/CrazyIDE

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

14 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

CRAZY IDE πŸš€

Multi-AI Coding Platform - The ultimate AI-powered IDE that brings together OpenAI GPT-4o, Google Gemini, and Anthropic Claude in one powerful development environment.

License: MIT Python 3.11+ Node.js 20+ Next.js 14 FastAPI

✨ Features

  • πŸ€– Multi-AI Integration - Access OpenAI GPT-4o, Google Gemini, and Anthropic Claude
  • πŸ’» Advanced Code Editor - Monaco Editor with syntax highlighting for Python, JavaScript, TypeScript, HTML, CSS, JSON
  • ⚑ Secure Code Execution - Run code in isolated Docker containers with security restrictions
  • πŸ’¬ AI Chat Assistant - Get intelligent code suggestions, explanations, and reviews
  • πŸ“ Project Management - Organize your code with projects and files
  • 🎨 Modern Dark UI - Beautiful zinc-950 dark theme with gradient accents
  • πŸ” Firebase Authentication - Secure user authentication and authorization
  • πŸ’Ύ Supabase Database - Fast and reliable PostgreSQL database
  • πŸ–₯️ Desktop Application - Native desktop apps for Windows, macOS, and Linux with Claude Code CLI integration

πŸ—οΈ Architecture

Frontend (Next.js + TypeScript + Tailwind CSS)
    ↓ REST API
Backend (FastAPI + Python)
    ↓ AI APIs
OpenAI, Gemini, Claude
    ↓ Code Execution
Docker Containers (Python, Node.js)

πŸš€ Quick Start

Using the Desktop App (Recommended)

Download the latest desktop application for your platform from the Releases page:

  • Windows: Download and run the .exe installer
  • macOS: Download the .dmg file, open it, and drag CRAZY IDE to Applications
  • Linux: Download the .AppImage, make it executable (chmod +x), and run it

See the Desktop App Documentation for more details.

Running from Source

Prerequisites

  • Node.js 20+ and npm
  • Python 3.11+
  • Docker and Docker Compose
  • Git

Installation

  1. Clone the repository
git clone https://github.com/Joseyosei/CrazyIDE.git
cd CrazyIDE
  1. Backend Setup
cd backend
python -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate
pip install -r requirements.txt
cp .env.example .env
# Edit .env with your API keys
  1. Frontend Setup
cd frontend
npm install
cp .env.example .env.local
# Edit .env.local with your configuration
  1. Run Backend
cd backend
uvicorn api.main:app --reload --host 0.0.0.0 --port 8000
  1. Run Frontend
cd frontend
npm run dev
  1. Access the Application

🐳 Docker Deployment

# Create .env file with your configuration
cp backend/.env.example .env

# Start all services
docker-compose -f docker/docker-compose.yml up -d

# View logs
docker-compose -f docker/docker-compose.yml logs -f

# Stop services
docker-compose -f docker/docker-compose.yml down

πŸ“š Documentation

🎯 Usage

1. Landing Page

Visit the home page to learn about CRAZY IDE features and get started.

2. Authentication

  • Sign up with email and password
  • Login to access your projects

3. Dashboard

  • View all your projects
  • Create new projects
  • Manage existing projects

4. Editor (Main IDE)

  • Write code in Monaco Editor
  • Select language (Python, JavaScript, TypeScript, etc.)
  • Run code securely in Docker containers
  • Ask AI for help using OpenAI, Gemini, or Claude
  • View output in integrated terminal
  • Chat with AI assistants in the sidebar

5. Settings

  • Configure API keys (stored locally)
  • Customize editor preferences
  • Manage account settings

πŸ”‘ Required API Keys

To use all features, you'll need:

  1. OpenAI API Key - Get from OpenAI Platform
  2. Google Gemini API Key - Get from Google AI Studio
  3. Anthropic Claude API Key - Get from Anthropic Console
  4. Firebase Project - Create at Firebase Console
  5. Supabase Project - Create at Supabase

πŸ› οΈ Tech Stack

Frontend

  • Framework: Next.js 14 (Pages Router)
  • Language: TypeScript
  • Styling: Tailwind CSS
  • Editor: Monaco Editor
  • HTTP Client: Axios
  • Auth: Firebase

Backend

  • Framework: FastAPI
  • Language: Python 3.11
  • AI SDKs: OpenAI, Google GenerativeAI, Anthropic
  • Database: Supabase (PostgreSQL)
  • Auth: Firebase Admin SDK
  • Code Execution: Docker SDK

Infrastructure

  • Containerization: Docker & Docker Compose
  • Database: PostgreSQL (via Supabase)
  • Authentication: Firebase Auth
  • Deployment: Docker Compose

🎨 Design System

Element Value
Background #0a0a0a (zinc-950)
Surface #0d0d0d to #181818
Border border-zinc-800
Text Primary text-white
Text Secondary text-zinc-400
Accent Gradient from-orange-500 to-pink-500

πŸ”’ Security Features

  • Isolated Code Execution: Docker containers with no network access
  • Memory Limits: 256MB per execution
  • CPU Throttling: 50% CPU limit
  • Execution Timeout: 30 seconds maximum
  • Authentication: Firebase token verification
  • Authorization: User-based access control
  • API Keys: Backend-only, never exposed to frontend

πŸ“ Project Structure

CrazyIDE/
β”œβ”€β”€ frontend/              # Next.js frontend
β”‚   β”œβ”€β”€ pages/            # Next.js pages
β”‚   β”œβ”€β”€ components/       # React components
β”‚   β”œβ”€β”€ lib/              # API clients
β”‚   β”œβ”€β”€ styles/           # CSS styles
β”‚   └── types/            # TypeScript types
β”œβ”€β”€ backend/              # FastAPI backend
β”‚   β”œβ”€β”€ api/              # Main application
β”‚   β”œβ”€β”€ routes/           # API routes
β”‚   β”œβ”€β”€ services/         # Business logic
β”‚   β”œβ”€β”€ models/           # Data models
β”‚   β”œβ”€β”€ auth/             # Authentication
β”‚   └── db/               # Database layer
β”œβ”€β”€ desktop/              # Electron desktop app
β”‚   β”œβ”€β”€ src/              # TypeScript source
β”‚   β”‚   β”œβ”€β”€ main.ts      # Main process
β”‚   β”‚   β”œβ”€β”€ preload.ts   # Preload script
β”‚   β”‚   └── ipc/         # IPC handlers
β”‚   └── resources/        # App icons
β”œβ”€β”€ docker/               # Docker configurations
β”‚   β”œβ”€β”€ docker-compose.yml
β”‚   β”œβ”€β”€ Dockerfile.frontend
β”‚   └── Dockerfile.backend
└── docs/                 # Documentation
    β”œβ”€β”€ SETUP.md
    β”œβ”€β”€ API.md
    └── ARCHITECTURE.md

🀝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ“„ License

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

πŸ™ Acknowledgments

πŸ“§ Contact

For questions and support, please open an issue on GitHub.


Built with ❀️ by the CRAZY IDE Team

About

Multi-AI Coding Platform - AI-powered IDE with OpenAI, Gemini, and Claude

Resources

License

Stars

1 star

Watchers

0 watching

Forks

Packages

 
 
 

Contributors