Ink Battle is a real-time multiplayer drawing and guessing game. One player draws, others race to guess the word, and points are awarded based on speed and accuracy.
Home Screen:
Ground Screen:
Create Room Screen:
Ink Battle is built around quick rounds and fun social competition:
- The host creates a room and invites players.
- On each round, one player becomes the drawer.
- The drawer selects a word from choices and starts sketching.
- Other players guess in chat while hints reveal gradually.
- Faster correct guesses get higher scores.
- Roles rotate each round until the match ends.
- Final scoreboard shows the winner.
- Real-time room and game state sync with Socket.IO.
- Multiplayer drawing board with live strokes.
- Word-choice rounds with hint reveal support.
- Score tracking, round flow, and final ranking.
- Host controls, room sharing, and replay support.
Requirements:
- Node.js 18+ (Node.js 22 recommended)
- npm
- Clone the repository.
- Open two terminals.
Terminal 1: Backend
cd backend
npm install
npm run devTerminal 2: Frontend
cd scribble
npm install
npm run devOpen the frontend URL shown by Vite (typically http://localhost:5173).
Frontend can use:
- VITE_SOCKET_URL (defaults to http://localhost:8000)
Backend can use:
- CLIENT_URL (defaults to http://localhost:5173)
Use the deployed app here:


