The Online Real-time Compiler is a web application that allows users to connect using a unique room ID and collaborate on coding in real-time. The application is built using React, Node.js, Express.js, and WebSockets, and it is deployed on Vercel and Render.
- Real-time Collaboration: Connect with others using a unique room ID and code together in real-time.
- React-based Frontend: A modern, responsive interface built with React.
- Backend with Node.js and Express.js: A robust backend to handle the compilation and room management.
- WebSockets for Real-time Communication: Instant updates and collaboration using WebSockets.
- Deployment: Frontend deployed on Vercel and Backend deployed on Render.
- Frontend: React
- Backend: Node.js, Express.js
- Real-time Communication: WebSockets
- Deployment: Vercel (frontend), Render (backend)
- Node.js (version 12 or higher)
- npm (version 6 or higher)
-
Clone the repository:
git clone https://github.com/your-username/online-realtime-compiler.git cd online-realtime-compiler
-
Install dependencies for both frontend and backend:
# Install frontend dependencies cd client npm install # Install backend dependencies cd ../server npm install
-
Start the backend server:
cd server npm start
-
Start the frontend server:
cd ../client npm start
-
Open your browser and navigate to
http://localhost:3000
to use the application.
- Sign up or log in to Vercel.
- Link your GitHub repository and deploy the
client
directory. - Follow the instructions to deploy the frontend.
- Sign up or log in to Render.
- Link your GitHub repository and deploy the
server
directory. - Follow the instructions to deploy the backend.
- Open the application in your browser.
- Enter a unique room ID to join or create a room.
- Start coding and collaborate in real-time with others.
- Fork the repository.
- Create a new branch (
git checkout -b feature-branch
). - Make your changes.
- Commit your changes (
git commit -m 'Add new feature'
). - Push to the branch (
git push origin feature-branch
). - Create a new Pull Request.
If you have any questions or suggestions, feel free to reach out at [email protected].