2 min read

spoker

nextjsreactchakra-uifirebasetypescriptzustand

Overview 🔗

spoker is a real-time planning poker application for agile teams. Team members join a room, vote on story points, and see the room state synchronize through Firebase Realtime Database.

The current app uses authenticated, email-verified accounts. It supports public and password-protected rooms, private vote labels, and three roles: owner, participant, and observant.

Why I Built This 🔗

I built this to improve the scrum poker experience my EPD team was using during backlog planning. I wanted a clearer interface, better responsiveness, and a more reliable room workflow.

Key Features 🔗

Real-Time Collaborative Rooms 🔗

Multiple users join a room and receive live updates through Firebase Realtime Database.

Private Voting 🔗

Vote labels remain hidden until the configured reveal condition is met, helping reduce anchoring during estimation.

Role-Based Access 🔗

Owners, participants, and observants have different permissions within a room.

Task Management 🔗

A queue-based workflow organizes active stories and keeps a completed-task history.

Room Privacy 🔗

Rooms can be public or password-protected.

Build Notes 🔗

Firebase Services 🔗

Firebase Authentication handles sign-in and email verification. Firebase Realtime Database stores room state and synchronizes updates across connected clients.

Current Stack 🔗

The current implementation uses Next.js 16, React, Chakra UI v3, TypeScript, and Zustand. The project remains actively maintained, with recent releases focused on dependency and framework updates.