A full-stack web application providing an isolated cloud-based development environment with real-time collaboration features, allowing multiple users to code together seamlessly.
- Containerized Workspaces
- Isolated Docker containers for each project
- Pre-configured development environments
- Supports multiple programming languages (C, C++, Node.js)
- Dedicated terminal access for each user
- Multiple users can work simultaneously
- Real-time code editing with cursor tracking
- Live file system updates
- Individual terminal instances for each collaborator
- Create and manage multiple projects
- Share projects with specific users
- Track project history and last accessed time
- JWT-based authentication for secure access
- Monaco Code Editor integration
- Syntax highlighting
- File system navigation
- Integrated terminal
- Real-time code execution
- React.js
- TailwindCSS
- Socket.IO Client
- Monaco Editor
- XTerm.js
- React Router DOM
- Express.js
- Socket.IO
- MongoDB/Mongoose
- Docker
- JWT
- Ngrok
- Node.js (v16+)
- Docker
- MongoDB
- Git
- Clone the Repository
git clone https://github.com/yourusername/cloud-ide.git
cd cloud-ide- Setup Environment Variables
# In server directory
cp .env.example .envRequired variables:
MONGODB_CONNECTION_STRING=
JWT_SECRET=
DOCKER_HOST=
NGROK_AUTH_TOKEN=
- Install Dependencies
# Frontend
cd client
npm install
# Backend
cd ../server
npm install- Build Docker Image
cd Docker
docker build -t cloud-ide-env .- Start the Application
# Start backend
cd server
npm run dev
# Start frontend (in new terminal)
cd client
npm run dev- Not deployed due to infrastructure costs
- Limited to C, C++, and Node.js environments
- Requires local Docker installation for development
- Additional programming language support
- Integrated debugging capabilities
- Custom themes
- File upload/download functionality
- Video/audio collaboration features
This project is currently in development and not open for contributions.