Skip to content

[Feature]: CRDT-Powered Real-time Collaborative System Design Whiteboard #1746

Description

Feature/Project Proposal

I would like to propose a CRDT-Powered Real-time Collaborative System Design Whiteboard.

Problem Statement

Currently, users have no built-in way to practice system design interviews collaboratively with a peer. External tools like Excalidraw must be used, which breaks the integrated experience.

Proposed Solution

The project could integrate a custom canvas-based whiteboard utilizing Conflict-free Replicated Data Types (CRDTs) like Yjs or Automerge. This ensures lock-free, zero-latency drawing synchronization between two peers practicing a system design question.

Alternatives Considered

Another possible solution is using Operational Transformation (OT), but CRDTs offer better offline capabilities and are easier to scale in a decentralized peer-to-peer setup.

Benefits

This feature would make PrepPilot a one-stop-shop for both coding and system design, significantly increasing user retention and session length.

Priority

High

Additional Context

Consider using Yjs paired with React Flow or a raw Canvas API.

Checklist

  • I have searched existing issues and discussions before creating this request.
  • I am willing to work on this feature if it is approved.

Metadata

Metadata

Labels

claimedThis issue has been claimed by a contributorenhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions