The React + Electron port of jspaint by 1j01
Bootstrapped with electron-react-boilerplate
yarn
yarn dev
- draggable
- outline when dragging
- Free form select
- Rectangular select
- Eraser
- Bucket thingy
- Color sampler
- Magnifying glass
- Pencil
- Brush
- Spray can
- Text
- Straight line
- Squiggly line
- Rectangle
- Polygon
- Ellipse
- Rounded Rectangle
- draggable
- dockable
- Drawing
- Saving (to redux store?)
- resizing
- handles
- resizing past window boundary (document
mousemove
event)
-
left click
to change primary -
right click
to change secondary - Ctrl
left click
to change tertiary -
double click
to pull up<input type="color"/>
(debounced forchange
) - draggable
- dockable
- File
- Edit
- View
- Image
- Colors
- Help
- Implement nested menus
- Implement functions
- Tool tooltip
- start coordinates
- end coordinates
- everything here https://www.albinoblacksheep.com/tutorial/mspaint
- Brush Scaling (Ctrl + & - to adjust brush size)
- "Custom Brushes" (hold Shift and drag the selection to smear it)
- The 'Stamp' "Tool" (hold Shift and click the selection to stamp it)
- Image Scaling (Ctrl+Shift + & - on the Numpad to scale the selection by factors of 2)
- Color Replacement (right mouse button with Eraser to selectively replace the foreground color with the background color)
- The Grid (Ctrl+G & Zoom to 6x+)
- Add Redux Undo for canvas undos
- Add Electron Redux to communicate with the main process