Skip to content

Multiplayer drawing and chatting site build with nextjs and socket.io

Notifications You must be signed in to change notification settings

Saumya40-codes/Doodler

Repository files navigation

Doodler

Doodler is an interactive canvas of creativity built with Next.js and Socket.io. It enables you to create personalized rooms, join friends using unique IDs, or dive into public random rooms. Engage in real-time collaboration through drawing and chat, making each session fun and dynamic.

🚀 Quick Demo

Doodler-kickstart.mp4

🎨 Key Features:

  • Room Creation:
    Create your own customizable rooms and invite others to join.

  • Join Friends' Rooms:
    Easily connect with friends using unique room IDs for private collaboration.

  • Public Random Rooms:
    Spontaneously connect with others by joining public rooms for open creativity.

  • Private Rooms:
    Ensure privacy—only users with specific IDs can access private rooms, with full control by the owner.

  • Real-time Chat:
    Engage in instant messaging with everyone in your room for seamless collaboration.

  • Collaborative Drawing:
    Draw together in real-time, creating shared artwork and designs.

  • User Presence Tracking:
    Get instant notifications when a user joins or leaves your room, keeping you informed of active participants.


🛠️ Tech Stack

  • TypeScript
  • Next.js
  • Chakra UI
  • Socket.io
  • Express
  • MongoDB

⚙️ Additional Features

  • Automated Server Configuration on AWS EC2:
    With Ansible, automate the setup of Nginx, SSL, Node.js, and PM2 for enhanced scalability and performance.

  • Kubernetes Integration:
    Deploy and manage Doodler using Kubernetes Pods, Deployments, and Services.
    Check out the Kubernetes configuration files for further details.