https://github.com/wenszel/mern-ludo
🎲 Multiplayer online Ludo created with MERN stack and SocketIO
https://github.com/wenszel/mern-ludo
canvas ludo mern-stack react socketio
Last synced: 3 months ago
JSON representation
🎲 Multiplayer online Ludo created with MERN stack and SocketIO
- Host: GitHub
- URL: https://github.com/wenszel/mern-ludo
- Owner: Wenszel
- Created: 2021-03-07T19:24:00.000Z (about 5 years ago)
- Default Branch: main
- Last Pushed: 2025-04-22T19:09:27.000Z (about 1 year ago)
- Last Synced: 2025-07-27T16:15:05.759Z (10 months ago)
- Topics: canvas, ludo, mern-stack, react, socketio
- Language: JavaScript
- Homepage:
- Size: 3.68 MB
- Stars: 22
- Watchers: 1
- Forks: 11
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Online Multiplayer Ludo Game
Ludo Online is a multiplayer web-based implementation of the classic board game Ludo, built using the MERN stack and integrated with SocketIO for real-time communication.
>> Watch YouTube Video here <<
## Architecture

## Tech Stack
Frontend:
  
  
Backend:
   
Tests:
  
Other:
    
## Key Features and Challenges
- Maintained session consistency with **Express Session** and **MongoDB**.
- Enabled real-time communication via **WebSocket** and **SocketIO**.
- Maintained code reliability by implementing unit and integration tests using **Mocha**, **Chai**, and **Jest**.
- Implemented E2E tests utilizing **Cypress**, addressing challenges related to [testing collaboration](https://docs.cypress.io/guides/references/trade-offs#Multiple-browsers-open-at-the-same-time) and canvas functionality in the application.
- Established a CI/CD pipeline using **CircleCI**, with pushing **Docker** container to **AWS ECR** and deploying to **AWS ECS**
## Installation
1. Download this repository
2. Generate your own [mongoDB atlas](https://www.mongodb.com) credential URL. It should looks like this:
```
mongodb+srv://madmin:@clustername.mongodb.net/?retryWrites=true&w=majority
```
3. Add this URL to the /backend/.env file (refer to .env.example)
4. Perform these commands in the main directory:
```
npm i
npm start
cd backend
npm i
node server.js
```
## Screenshots


