A dynamic and interactive drawing application built with Python and Pygame, designed to help users improve their drawing skills through various engaging games and exercises.
Main Menu | Draw Basic Shapes |
---|---|
![]() |
![]() |
Trace Letters | Whiteboard Playground |
![]() |
![]() |
- Draw Basic Shapes: Practice drawing geometric shapes with real-time accuracy feedback
- Trace the Number: Learn to write numbers with guided tracing exercises
- Trace the Letter: Master letter writing with interactive tracing
- Trace the Sentence: Improve handwriting by tracing complete sentences
- Whiteboard Playground: Free-form drawing space with various tools
- 🖌️ Smooth drawing mechanics with pressure sensitivity
- 🎯 Real-time accuracy tracking and feedback
- ↩️ Undo (Ctrl+Z) and Redo (Ctrl+Shift+Z) support
- 🎨 Customizable brush sizes and colors
- 📊 Progress tracking and performance metrics
- 🔄 Auto-progression based on accuracy achievements
- Python 3.8 or higher
- Pygame 2.0.0 or higher
- Clone the repository:
git clone https://github.com/Omar7001-B/cursor-draw.git
cd cursor-draw
- Install required dependencies:
pip install -r requirements.txt
Note: The "Whiteboard to Text" game requires the Tesseract OCR engine to be installed on your system. Please see the Tesseract installation guide for instructions specific to your operating system.
- Run the application:
python run.py
-
Main Menu: Select from available games and exercises
-
Drawing Controls:
- Left mouse button to draw
- Right mouse button to erase
- Mouse wheel to adjust brush size
- Ctrl+Z to undo
- Ctrl+Shift+Z to redo
-
Game-Specific Features:
- Follow on-screen instructions for each game
- Watch the accuracy meter for real-time feedback
- Progress automatically when accuracy thresholds are met
- Use the clear button to reset the canvas
cursor-draw/
├── src/
│ ├── core/ # Core drawing engine and whiteboard
│ ├── games/ # Individual game implementations
│ ├── utils/ # Utility functions and helpers
│ └── config.py # Application configuration
├── assets/ # Game assets and resources
├── requirements.txt # Project dependencies
└── run.py # Application entry point
- Drawing Engine: Handles all drawing operations and canvas management
- Accuracy Tracker: Provides real-time feedback on drawing accuracy
- Path Detection: Implements shape and pattern recognition algorithms
- Game Manager: Coordinates game states and progression
Cursor.Draw.Demo.mp4
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Thanks to all contributors who have helped shape this project
- Special thanks to the Pygame community for their excellent documentation and support
- Inspired by various drawing and educational applications
- GitHub: @Omar7001-B
- Project Link: https://github.com/Omar7001-B/cursor-draw
Made with ❤️ by Omar7001-B