A real-time collaborative code editor where multiple users can join a room and code together live. Built from scratch using React.js, Socket.io, Express.js, and Bootstrap.
How it works:
- Enter your name and click “Create New Room” or enter a Room ID to join.
- Share the Room ID/URL with others.
- Collaborate live – any code you type will sync instantly.
- Get real-time updates when people join or leave.
Frontend:
- React.js
- Bootstrap
- CodeMirror (code editor)
- React Router
- UUID (for unique room IDs)
- react-avatar (user avatars)
Backend:
- Node.js
- Express.js
- Socket.io (real-time WebSocket communication)
- Create & Join Rooms
- Real-Time Code Sync Across Users
- Unique Room URLs with Shareable Links
- Username & Avatar Display
- Toast Notifications for Join/Leave
- Room Clean-up and Disconnect Handling
-
Clone the repository:
git clone https://github.com/namaniisc/CodeCast.git cd CodeCast -
Install client dependencies:
cd client npm install -
Install server dependencies:
cd ../server npm install
-
Start the backend:
cd server npm start -
Start the frontend:
cd ../client npm start -
Open in browser:
http://localhost:3000
.
├── client/ React frontend
│ ├── public/ Static assets (e.g., logo)
│ └── src/ Source code
│ ├── components/
│ ├── pages/
│ └── App.js
├── server/ Express + Socket.io backend
│ ├── index.js
│ └── package.json
└── README.md
Pull requests and issues are welcome! Feel free to improve features, fix bugs, or enhance the documentation.
