- Tech Used
- React
- Node.js
- Socket.IO
- MongoDB
- GitHubCode Link
CanvasRoom is an interactive platform enabling real-time collaboration through coding, drawing, and messaging to foster creative teamwork and communication.
Project Purpose and Goal
The aim of CanvasRoom was to create a versatile collaboration platform where users can code, draw, and communicate in real-time. The primary goal was to enhance productivity and creativity by integrating multi-user functionalities in a unified interface.
Web Stack
React was used for the frontend due to its component-based architecture and ease of state management. Node.js and Socket.IO handled the backend, enabling real-time communication. MongoDB was chosen for its flexibility in storing user data, code snippets, and drawings, ensuring data persistence.
Thought Process
Maintaining real-time synchronization with minimal latency was challenging. I leveraged Socket.IO to achieve efficient updates and built a secure token-based authentication to protect rooms. Next steps involve improving role management and making the UI fully responsive for mobile users.
Lesson Learned
I significantly expanded my expertise in real-time systems using React and Socket.IO, improved my understanding of shared state management across clients, and reinforced secure multi-user authentication practices.