GameVo is a web-based application that combines gaming and real-time chat functionality. The application allows users to create or join game rooms, play games, and chat with other participants in the room.
- Real-time chat with other users in the game room.
- Create a new game room and share the room code.
- Join an existing game room using a room code.
- Play games with other users in the room.
- Background music and sound effects for enhanced user experience.
- Frontend: React, React Router, Socket.io-client, Styled-components, MUI
- Backend: Express, Socket.io
- Styling: CSS
- Other Libraries: Lottie-react for animations, Concurrently for running backend and frontend simultaneously (optional)
Make sure you have the following installed on your local machine:
- Node.js (v12.x or higher)
- npm (v6.x or higher)
-
Clone the repository:
git clone https://github.com/Nachi28/Gamevo.git cd Gamevo
-
Install dependencies:
For the backend:
cd server npm install
For the frontend:
cd ../client npm install
-
Start the backend server:
cd server npm run start:backend
-
Start the frontend application:
cd ../client npm start
-
Run both frontend and backend concurrently (optional):
cd server npm start
-
Creating a Room:
- Enter your name and click on the "Create Room" button.
- A room code will be generated and copied to your clipboard.
- Share this room code with other participants.
-
Joining a Room:
- Enter your name and the room code you received.
- Click on the "Join Room" button to enter the room.
-
Chatting and Gaming:
- Use the chat interface to send messages to other users in the room.
- Play the game using the provided game board.
├── client # Frontend application
│ ├── public # Public assets
│ ├── src # Source files
│ ├── package.json # Frontend dependencies and scripts
├── server # Backend application
│ ├── server.js # Main server file
│ ├── package.json # Backend dependencies and scripts
├── README.md # Project overview and setup instructions
Contributions are welcome! Please open an issue or submit a pull request for any changes.
This project is licensed under the MIT License.