Code Wave is a real-time collaborative code editor built using React, Node.js, and Socket.IO. It allows multiple users to join the same coding session via a shared room ID and collaborate live in a seamless and synchronized coding environment.
🔗 Try the app live at: https://code-wave-jet.vercel.app
- 🔁 Real-time Code Syncing – Code changes are reflected instantly across all connected clients.
- 🔐 Unique Room IDs – Secure and easy-to-share room IDs for collaborative sessions.
- 🧠 User-friendly Interface – Clean, intuitive layout that focuses on productivity.
- 📋 Clipboard Utility – Quick copy functionality for room sharing.
- ⚛️ Modern Stack – Built using React, Node.js, Express, and Socket.IO for high performance.
Frontend:
- React
- React Router DOM
- React Hot Toast
- UUID
Backend:
- Node.js
- Express
- Socket.IO
code-wave/
├── public/ # Static files and HTML template
├── src/
│ ├── components/ # Reusable UI components (Editor, Client)
│ ├── pages/ # Pages: Home & EditorPage
│ ├── socket.js # Socket.IO client config
│ ├── Actions.js # Defined socket action constants
│ └── App.js # Main app routing
├── server.js # Express and Socket.IO backend server
├── package.json # Project metadata and scripts
└── README.md # Project overview and documentation
Follow the steps below to run the project locally:
git clone https://github.com/MananHere576/code-wave.git
cd code-wavenpm installnpm startThis will:
- Build the React frontend
- Launch the Node.js + Socket.IO backend on localhost:5000
- Open the app in your browser.
- Enter your username on the homepage.
- Either:
- Enter an existing Room ID to join a session, or
- Click "Create New Room" to generate a unique room.
- Share the Room ID with collaborators.
- Start editing together in real-time. Code updates will sync across all participants!
- Node version:
>=14.x - React scripts:
^5.0.1 - WebSocket-based real-time communication via Socket.IO
Contributions are welcome! 🙌
To contribute:
- Fork the repo
- Create a new branch (
git checkout -b feature/your-feature) - Make your changes
- Commit (
git commit -am 'Add your message') - Push to the branch (
git push origin feature/your-feature) - Open a Pull Request
Built with ❤️ by Manan Mishra
- GitHub: @MananHere576
- Live Demo: code-wave-jet.vercel.app


