KodOff
Real-time Competitive Programming Game
Role
Developer
Timeline
4 months (2023)
Tools
React, Express, MongoDB, WebSocket

Overview
KodOff is a real-time 1-on-1 competitive programming platform where players race against each other to solve 3 programming challenges within 2 minutes. The project features live multiplayer functionality, real-time code execution, and an immersive gaming experience.
The Challenge
Building a real-time competitive coding platform required handling WebSocket connections, managing concurrent games, executing user code safely, and creating an engaging user experience with minimal latency.
The Solution
Developed a full-stack application with React frontend and Express backend, integrated WebSocket for real-time communication, implemented secure code execution, and deployed on Google Cloud Platform with PM2 and Docker for reliability.
Key Features
Real-Time Multiplayer
Live 1-on-1 matches with WebSocket communication, instant updates, and synchronized game state across clients.
Immersive Game Experience
Login/Sign Up, Home, In-Game interface, Leaderboard, and Match History with intuitive UI designed in Figma.
Secure Authentication
GitHub OAuth integration with secure communication protocols for smooth sign-up and user management.
Live Leaderboard
Real-time ranking system that updates as players complete matches, showing wins, losses, and performance metrics.
Code Execution Engine
Safe sandboxed environment for running user-submitted code with multiple language support.
Cloud Deployment
Deployed on Google Cloud Platform using PM2 for backend process management and Docker for frontend containerization.
Tech Stack
Frontend
Backend
Database
Authentication
Deployment
Outcomes & Impact
Real-time latency
Team members
Game duration
Key Learnings
WebSocket implementation for real-time bidirectional communication requires careful state management
Sandboxing user code execution is critical for security in competitive programming platforms
Docker containerization simplifies deployment and ensures consistent environments across development and production
Load balancing and process management with PM2 improves application reliability and uptime