Is there a Javascript library for Paint-like applications using canvas?

Raphaël

Raphaël doesn't use Canvas. It uses SVG on browsers that support it or VML on Internet Explorer.

SVG

If you want an SVG solution designed specifically for drawing then take a look at:

  • SVG-edit

See this demo.

Canvas

If you want to use Canvas but you need a retained mode rendering then see:

  • Fabric.js
  • Paper.js
  • Processing.js
  • EaselJS
  • KineticJS
  • bHive

Update (February 2014)

  • ART, a retained mode vector drawing API - targets all three of HTML5 Canvas, SVG and VML (plus some code generation). Used by the Facebook team together with the React UI toolkit (see: react-art and the "art" branch of the react-page project on GitHub).

There is processingJS, but as it is port of the JAVA bassed processing you write your code in "javaish" processing language. But after all you could create what an paint like app. Another framework is fabricJS which is also really great to work with canvas.


Literally Canvas fits this exact purpose: http://literallycanvas.com

"Literally Canvas is an extensible, open source (BSD-licensed), HTML5 drawing widget...You can use it to embed drawing boards in web pages."