Skip to content

kylemath/GroupPaint

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Group Paint 🎨

A simple collaborative drawing application where multiple users can draw on a shared canvas in real-time.

Features

  • Anonymous Login: Join with any name or stay anonymous
  • Real-time Collaboration: See others' drawings instantly
  • Persistent Canvas: New users see the current canvas state, not a blank canvas
  • Drawing Tools: Adjustable brush size and color picker
  • Draw Only Mode: No eraser - all drawings are permanent
  • Mobile Support: Works on touch devices
  • User List: See who's currently online

Setup & Run

1. Create Virtual Environment

python3 -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

2. Install Dependencies

pip install -r requirements.txt

3. Run the Application

python app.py

4. Access the App

Open your browser and go to:

Usage

  1. Enter a name or leave blank to join as "Anonymous"
  2. Click "Start Drawing"
  3. You'll see the current canvas with all existing drawings
  4. Select a color and brush size
  5. Draw on the canvas - everyone sees your strokes in real-time
  6. All drawings are permanent with no way to clear

Technical Stack

  • Backend: Flask + Flask-SocketIO (WebSocket server)
  • Frontend: HTML5 Canvas + Socket.IO client
  • Real-time Sync: WebSocket protocol for instant updates

Current Status

✅ Fully functional collaborative drawing app ✅ Real-time synchronization with persistent canvas state ✅ New users see existing canvas drawings ✅ Anonymous login system ✅ Mobile-friendly interface ✅ Draw-only mode - all drawings are permanent

Preview

Project screenshot

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published