A real-time Scrum planning poker game built with React and Socket.io. Perfect for remote teams to estimate user stories collaboratively.
- 🎯 Real-time Voting: Cast your story point estimates in real-time
- 🏠 Game Rooms: Create or join rooms with unique IDs
- 👥 Multiplayer: Support for multiple players in the same room
- 🔄 Vote Management: Reveal all votes at once, reset for new stories
- 📱 Responsive Design: Works great on desktop and mobile
- ⚡ Live Updates: See when players have voted and their status
- Frontend: React + Vite
- Backend: Node.js + Express
- Real-time: Socket.io
- Styling: CSS3 with modern design
- Node.js (v16 or higher)
- npm
- Clone the repository:
git clone <your-repo-url>
cd scrum-planning-poker- Install all dependencies:
npm run install-all- Start the development servers:
npm run devThis will start both the backend server (port 3001) and frontend client (port 5173).
If you prefer to run the servers separately:
Backend:
cd server
npm install
npm run devFrontend:
cd client
npm install
npm run dev- Join a Room: Enter your name and either create a new room or join an existing one
- Cast Votes: Click on story point cards (1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ?, ∞)
- Reveal Votes: Once everyone has voted, click "Reveal Votes" to see all estimates
- Reset: Click "Reset Votes" to start estimating the next story
The game uses the Fibonacci sequence for story points:
- 1, 2, 3, 5, 8, 13, 21, 34, 55, 89 - Standard story point values
- ? - Need more information
- ∞ - Too big to estimate
scrum-planning-poker/
├── client/ # React frontend
│ ├── src/
│ │ ├── App.jsx # Main application component
│ │ ├── App.css # Styles
│ │ └── main.jsx # Entry point
│ └── package.json
├── server/ # Node.js backend
│ ├── index.js # Express server with Socket.io
│ └── package.json
└── package.json # Root package.json with scripts
npm run dev- Start both client and server in development modenpm run client- Start only the React clientnpm run server- Start only the Node.js servernpm run build- Build the client for productionnpm start- Start the production server
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
MIT License - see LICENSE file for details