demovideocodecollab.mp4
CollabCode is a real-time collaborative coding platform where multiple users can write, edit, and share code simultaneously. Perfect for pair programming, technical interviews, teaching coding concepts, or collaborating with team members remotely.
Demo Accounts:
- Email: chrome@gmail.com | Password: 1234
- Email: firefox@gmail.com | Password: 1234
How to use:
- Log in with one of the demo accounts
- Create a new room or join an existing one with the room ID
- Share the room ID with others to collaborate
- Start coding together in real-time!
- Real-Time Collaboration: Multiple users can edit the code simultaneously, with changes reflected in real-time.
- Syntax Highlighting: Supports syntax highlighting for multiple programming languages using CodeMirror.
- Authentication: Secure user authentication with JWT.
- Room Management: Users can create or join rooms using a room ID.
- Multi-Tab Support: Create multiple code tabs to organize your work.
- Language Selection: Switch between different programming languages.
- Theme Options: Choose from various editor themes for comfortable coding.
-
Clone the Repository
git clone https://github.com/shubhamc1947/realtime-code-editor-MERN.git cd realtime-code-editor-MERN -
Install Dependencies
For the server:
cd api npm installFor the client:
npm install
-
Set Up Environment Variables
Create a
.envfile in theapidirectory and add your environment variables:PORT=5000 MONGO_URI=your_mongodb_connection_string JWT_SECRET=your_jwt_secret
-
Run the Application
Start the server:
cd api npm startStart the client:
npm run dev
The application should now be running on
http://localhost:5173.
-
Create or Join a Room
Users can create a new room or join an existing room by entering a room ID.
-
Collaborate
Once inside the room, users can start editing the code. The changes will be synchronized in real-time across all users in the room.
- Frontend: React, CodeMirror
- Backend: Node.js, Express, MongoDB
- Real-Time Communication: WebSockets (Socket.io)
- Authentication: JWT
Contributions are welcome! Please open an issue or submit a pull request for any bugs, improvements, or new features.
This project is licensed under the MIT License. See the LICENSE file for details.
For any questions or feedback, please contact:
- Name: Shubham Chaturvedi
- Email: shubhamchat224122@gmail.com
Special thanks to all contributors and users of this project.
Thank you for using the Real-Time Code Editor! Happy coding!