This is a real-time multiplayer online game where multiple players can compete in the classic game of Pong.
game.mp4
- Backend: NestJS
- Frontend: Next.js
- Frontend Library: Material-UI
- Database: PostgreSQL
- ORM: Prisma
- Real-time Communication: Socket.io
- Game
- Two-player mode
- Simple, intuitive controls
- Choose from different levels of difficulty and scores
- Rankings based on scores
- Spectate live games
- Chat
- Public, private, and password-protected chat rooms
- Direct messaging
- Block and report users
- Admins and chat room owners can mute, ban, or kick users
- Login
- Google and 42 login integration for easy access
- Two-factor authentication (can be enabled from the settings)
To start the app, run the following command:
docker-compose up --build
This will set up the database and start the app.
To set up either Google or 42 login, add the following information to the backend's .env file:
- GOOGLE_CLIENT_ID
- GOOGLE_SECRET
- FORTYTWO_CLIENT_ID
- FORTYTWO_SECRET
- Match with another player
- Choose a difficulty level and set score
- Use your paddle to hit the ball and prevent it from hitting the bottom of the screen
- The first player to reach the set score wins
- Check your ranking on the leaderboard
Enjoy both the game and the chat!