Real-time collaborative drawing platform

CollabCanvas

CollabCanvas supports room-based drawing, authentication, persistent history, and synchronized collaboration through an event-driven architecture.

What I built

  • Built six REST endpoints and six WebSocket event types for rooms, authentication, and collaboration.
  • Used PostgreSQL and Prisma for users, rooms, and persistent drawing history.
  • Implemented JWT access/refresh tokens, httpOnly cookies, and bcrypt password hashing.

Technical challenge

  • Kept canvas events responsive while preserving room state for newly connected participants.

Technology

Next.js, Node.js, TypeScript, WebSockets, PostgreSQL, Prisma ORM, JWT, Turborepo