Skip to content

Asthraris/Paint-2D

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎨 PikaDraw – Minimalist Cross-Platform Drawing App

PikaDraw is a lightweight, cross-platform 2D drawing application built using raylib. It emphasizes simplicity, speed, and smooth brush-based drawing — making it ideal for quick sketching, digital whiteboarding, or low-latency creative work. Screenshot Placeholder


✨ Features

  • 🖌️ Smooth Freehand Drawing with continuous brush stroke interpolation
  • 🎨 Color Picker: Hold C to select from predefined color swatches
  • 🔁 Canvas Reset: Press R to instantly clear the canvas
  • 🔍 Zoom & Pan:
    • Hold Ctrl + scroll to zoom
    • Middle mouse drag to pan
  • 🧠 Context Help: Hold Space to show built-in control guide
  • 📸 Screenshot Export: Press S to save canvas as PNG with timestamp
  • ⚙️ Brush Preview Cursor: Always-visible pointer reflecting brush size & color
  • 💡 Lightweight & Fast: Minimal dependencies, instant load, and low resource usage

⌨️ Controls

Key / Action Function
Left Click Draw with brush
C (hold) Show color picker
Click color Select brush color
R Reset/clear canvas
Shift Adjust brush size
Ctrl + Scroll Zoom in/out
Middle Mouse Drag Pan camera
S Save canvas screenshot (PNG)
Space (hold) Show help menu
ESC Exit application

🖼️ Screenshot Feature

Output files saved as canvas_YYYY-MM-DD_HH-MM-SS.png


Download Exe for windows Provided under release section , u can use by downloading it from there without Compiling yourself.!


📦 Building From Source

Requirements:

  • C++ compiler (GCC / Clang / MSVC)
  • raylib installed (v4.5+ recommended)

Example (GCC / Linux):

g++ main.cpp Canvas.cpp Brush.cpp -o PikaDraw -lraylib -lGL -lm -ldl -lpthread -lrt -lX11
./PikaDraw

🔭 Roadmap

  • 🖌️ More advanced brushes (texture, spray, gradient)
  • 🖼️ Canvas resize and rescale support
  • 💾 Manual save/load projects
  • 🌈 HSV or palette-based color selector
  • 🧠 Brush history / undo-redo
  • 🪟 Export with transparent background (PNG alpha)

⚙️ Tech Stack

  • Language: C++
  • Framework: raylib — a minimalist C library for graphics and input
  • Built with: simplicity, speed, and full offline support in mind

📃 License

MIT License – use freely for personal, academic, or commercial projects.


🙌 Author

AMAN GUPTA Inspired by simplicity. Powered by code.