Skip to content

Repository files navigation

Collab Code Editor

A real-time collaborative code editor that enables multiple developers to work on the same project simultaneously. The platform provides live collaboration, project management, file versioning, integrated chat, code execution, and AI-assisted development tools.

Features

Real-Time Collaboration

  • Multi-user collaborative editing
  • Live cursor and presence tracking
  • Active user monitoring
  • Shared project workspace

Project Management

  • Create and manage coding projects
  • Organize files and folders
  • Collaborator management
  • Role-based project access

Code Editor

  • Monaco Editor integration
  • Syntax highlighting
  • Multi-file editing
  • Editor tabs and file navigation
  • Search functionality

Communication

  • Real-time team chat
  • Presence indicators
  • Collaboration notifications

Development Tools

  • Integrated terminal
  • Code execution support
  • HTML preview
  • File history and version tracking

AI Features

  • AI-assisted coding support
  • AI console integration

Security

  • User authentication
  • Protected routes
  • Secure project access control

Tech Stack

Frontend

  • React
  • TypeScript
  • Vite
  • Tailwind CSS
  • Zustand
  • React Query
  • Monaco Editor
  • Socket.IO Client

Backend

  • Node.js
  • Express.js
  • MongoDB
  • Socket.IO
  • JWT Authentication

Project Structure

src/
├── components/
│   ├── editor/
│   ├── projects/
│   └── auth/
├── hooks/
├── pages/
├── store/
└── lib/

server/
├── src/
│   ├── routes/
│   ├── socket/
│   ├── models/
│   ├── middleware/
│   └── utils/

Installation

Clone the Repository

git clone <repository-url>
cd collab-code-editor

Frontend Setup

npm install
npm run dev

Backend Setup

cd server
npm install
npm run dev

Future Improvements

  • Operational Transformation (OT) / CRDT support
  • Collaborative whiteboard
  • Video and voice collaboration
  • Git integration
  • Containerized code execution
  • Advanced project analytics

License

This project is intended for educational and learning purposes.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages