React Magic painter

Simple paint app made with React, custom hooks, Canvas API, font awesome and lots of.

There are two tools that set apart this paint app from the others, it's what you'd call a "magic part". First tool is a "Magic Brush" which paints a beautiful stream of every available color (with a fixed saturation and lightness) in a gradient. This allows users to create magical and dream-like art.


The second tool is the "Dynamic Width" tool which changes the paint tool brush radius from a minimum to a maximum value pixel by pixel, creating a beautiful flow of paint. When combined with the Magic Brush tool, it yields some astonishing results.


Other tools include:

  • Brush preview (color and size)
  • Standard solid color brush
  • Eraser
  • Color picker
  • Image downloader (download images as png)
  • Manual brush size control
  • Magic brush color saturation and lightness controls

Tech stack

  • React (with custom React hooks)
  • Canvas API
  • Native color picker and range inputs
  • Font awesome icons
  • Netlify hosting