output.mp4
- Ensure you have Node.js (v20+) installed
- Install PNPM:
npm install -g pnpm
- Install dependencies:
pnpm install
- Update /etc/hosts
...
127.0.0.1 localhost
::1 localhost
...
+ 127.0.0.1 client.breakout.local
+ 127.0.0.1 server.breakout.local
Because this application shares the cookie between the client and server app, it is probably easier if you just do the whole local dev environment with docker compose, with caddy (and redis) setup already.
- install docker
- docker compose up -d
- visit https://client.breakout.local
- certs are in caddy
- https://github.com/FiloSottile/mkcert#installing-the-ca-on-other-systems
apps/
: Application-specific projectspackages/
: Shared libraries and utilities
- Room creation with Redis persistence
- User identification with cookies
- Random name generation with customization
- Real-time participant tracking
- Host view of attendees
- Group configuration (size/count modes)
- Real-time group distribution preview
- Group assignment with shuffle
- Real-time notifications
- Group state persistence
- Repeat minimization algorithm
- Late-joining participant handling
- Enhanced group management features
For detailed task tracking and future improvements, see docs/todos.md