The Collaborative Code Editor is a web-based platform designed for real-time coding collaboration. It supports multiple programming languages, displays live code output, and allows multiple users to work together simultaneously on the same project.
- Real-Time Collaboration: Multiple users can code together in a shared environment with low latency.
- Multi-Language Support: Includes support for various programming languages such as Python, JavaScript, Java, and more.
- Live Code Execution: Displays the output of the code in real-time for supported languages.
- User-Friendly Interface: Clean and intuitive UI for seamless coding collaboration.
- Secure Sessions: Ensures data integrity and privacy during collaborative sessions.
- Frontend: React.js, Tailwind CSS
- Backend: Node.js, Express.js
- WebSocket Communication: Socket.IO for real-time collaboration
- Code Execution Engine: Docker-based containerization for safe and isolated code execution
- Database: MongoDB
- Clone the repository:
git clone https://github.com/Saman-dev12/Collaborative-Editor.git cd Collaborative-Code-Editor
- Install dependencies for both the client and server:
cd frontend npm install cd ../backend npm install
- Configure environment variables:
- Create a
.env
file in theserver
directory. - Add the following variables:
PORT=5000
- Create a
- Start the development server:
cd backend npm run dev
- Start the client:
cd frontend npm run dev
- Open the application in your browser.
- Create or join a coding session by sharing a unique session link.
- Begin collaborative coding with your team.
- View live output for supported programming languages.
- Integration with popular version control systems (e.g., GitHub).
- Syntax highlighting and autocomplete for enhanced productivity.
- Support for more programming languages.
- Enhanced performance for handling larger collaborative teams.
Contributions are welcome! Please follow these steps:
- Fork the repository.
- Create a new branch for your feature or bug fix:
git checkout -b feature-name
- Commit your changes and push to the branch:
git push origin feature-name
- Open a pull request describing your changes.
This project is licensed under the MIT License.
For any questions or support, please open an issue in the repository or contact me directly.