실시간 의사결정 플랫폼
실시간 협업으로 빠르게 추정하고 합의까지 끝내는 저마찰 플래닝 포커 플랫폼, for 'agile-teams'
Realtime Planning Poker Platform
가볍게 시작하고, 빠르게 합의하는 팀을 위한
실시간 플래닝 포커 협업 도구.
Overview
이 플랫폼은 'Agile Sprint Estimation'을 위한 'Realtime Planning Poker' 기법의 웹 애플리케이션이다... 별도의 계정 생성 없이, 방 생성 → 참여 → 투표 → 공개 → 결과 기록까지 한 번에 진행할 수 있다.
- 인증 없이 사용 가능한 웹 기반 협업 도구
- 팀 단위 실시간 의사결정 지원
- 저마찰(low-friction) 구조
Core Features
Room 기반 세션
- 고유 코드 기반 방 생성
- 링크 공유만으로 즉시 참여
- 세션 기반 사용자 식별 (계정 불필요)
Story 중심 추정 흐름
- 스토리 생성 / 수정 / 정렬
- 상태 기반 라이프사이클 (대기 → 투표 → 공개)
- 반복 가능한 추정 라운드
실시간 투표 시스템
- 개인 투표는 공개 전까지 비공개
- Reveal 시 전체 결과 동기화
- 평균 / 중앙값 자동 계산
결과 기록 및 Export
- 각 스토리별 결과 스냅샷 저장
- 참여자별 투표 기록 유지
- CSV Export 지원
Realtime 동기화
- WebSocket 기반 상태 동기화
- 투표 / 상태 변경 즉시 반영
- Presence 기반 참여자 관리
Architecture
Monolithic + Realtime Event-driven 구조
- Backend: Laravel 13 (MVC)
- Frontend: React 18 + Inertia
- Realtime: Laravel Broadcasting + Pusher-compatible
- Styling: Tailwind CSS
핵심 특징:
- 서버 중심 라우팅 + SPA UX (Inertia)
- 이벤트 기반 상태 동기화
- 단일 애플리케이션 구조
Domain Model
주요 엔티티:
- Room – 협업 단위
- Participant – 세션 기반 사용자
- Story – 추정 대상
- Vote – 개별 투표
- StoryResult – 결과 스냅샷
- StoryResultVote – 공개된 투표 기록
관계:
- Room → Stories / Participants / Results
- Story → Votes
- Result → Immutable snapshot
Realtime Flow
- 사용자가 방에 접속
- 스토리 생성 및 투표 시작
- 각 참여자가 개별 투표 제출
- Reveal 이벤트 발생
- 모든 클라이언트 동기화 및 결과 계산
Why This Platform
기존 도구 대비 차별점:
- 계정 생성 없이 즉시 사용 가능
- 복잡한 설정 없이 링크 공유로 시작
- 완전한 실시간 동기화
- 결과 기록 및 Export 제공
- 접근성/글꼴크기/Font/테마 고려한 UI
Tech Stack
Backend
- Laravel 13
- Eloquent ORM
- SQLite (default) / MariaDB / MySQL 지원
Frontend
- React 18
- Inertia.js
- Vite
Realtime
- Laravel Echo
- Pusher-compatible WebSocket
wscat -c "wss://reverb-ws.glitter.tw/app/56bce3d497e5bef811aebb78eebaa6d6"
Styling
- Tailwind CSS
- Headless UI
Design Philosophy
- Low friction > Full auth
- Realtime collaboration > Complex workflow
- Single responsibility domain
- 빠른 시작, 명확한 흐름, 최소 상태
Use Cases
- 스프린트 플래닝
- 스토리 포인트 추정
- 팀 합의 기반 의사결정
- 소규모 협업 세션
Limitations
- 계정 기반 인증 없음 (세션 기반)
- SQLite 기본 사용 → 대규모 환경 부적합
- CI/CD 및 배포 자동화 미구성
- 테스트 커버리지 제한적
Project Notes
- Docker / Container 환경 미사용
- 단일 애플리케이션(Monolith) 구조
- 배포는 '자가 물리 호스트' VM / Nginx (리버스 프록시)
Summary
이 프로젝트는
빠르게 모이고, 빠르게 합의하고, 기록까지 남기는 것을 목표로 설계된 경량 협업 도구다.
복잡한 인증과 설정을 제거하고,
팀 단위 '실시간 의사결정', 자체에 집중했다.
이 개발자의 다른 프로젝트
그누보드7 예약 모듈 - glitter-reservation
코어 수정 없이 붙여 사용하는 그누보드7 예약 모듈로, 신청·인증·조회·취소·관리까지 예약 흐름 전체를 모듈 단위로 제공합니다.
그누보드7 상담예약 템플릿 - Glitter Academy Core
GnuBoard7 Template 엔진 기반으로 상담예약 사이트 구성을 위한 초기 템플릿 예제로 설계되었습니다.
그누보드7 커뮤니티 템플릿 - SIRsoft Community
쇼핑몰(이커머스 의존)을 제거하고 커뮤니티 기능에 집중한 경량 사용자 템플릿, ID : sirsoft-comm
수정 이력 (1)
- 실시간 투표 동기화 안정성 - 결과 집계 로직 최적화