Real-time collaboration. See changes instantly. Auto-saves.
- Create Room → Get unique room ID
- Join & Collaborate → Multiple users connect via WebSocket
- Real-time Sync → Changes broadcast instantly
- Auto-save → Saves after 10 seconds of inactivity
- Debounced Auto-save → No data loss
- Hybrid State → Memory + database
- Zero Config → Generate rooms on-demand
- WebSocket State Management → Connection cleanup
- Performance Optimization → Memory vs database balance
- Timeout Management → Debounced auto-save
- Real-time Architecture → Data consistency
npm install
npx prisma generate
npx prisma migrate dev
npm run devCreate Room:
GET / → { roomId: "abc12" }
WebSocket Events:
// Join room
{ type: "join", payload: { roomId: "abc12" } }
// Send code
{ type: "code", payload: { roomId: "abc12", code: "console.log('hello');" } }- Better Error Handling → Retry mechanisms
- Read-only Mode → Observer permissions
- Permanent Storage → Persistent repositories
- User Cursors → Real-time editing positions
- Backend → Node.js + TypeScript + Express
- Real-time → WebSocket (ws library)
- Database → PostgreSQL + Prisma ORM
