Real-time collaborative whiteboard inspired by Excalidraw and tldraw. Multi-tool canvas with rooms, live sync, and shareable view-only links.
• Built a multi-tool canvas — pencil, rectangle, circle, line, triangle, and text — with dashed/arrow line variants and partial erase, synced live over WebSockets.
• Designed a room system with JWT-authenticated dashboards, per-room canvas persistence (Prisma/Postgres), and admin-only room deletion.
• Added shareable, read-only view links (view tokens) so a board can be shared without granting edit access.
• Structured as a Turborepo monorepo separating the Next.js client, an Express HTTP API, and a dedicated WebSocket backend.