CreateJS EaselJS 0.8.0

Posted on

I worked with Flash for some 11 years  because as a creative medium it just worked. Sure the medium could be used incorrectly but it was great, it had no rules, few limitations, constantly improved, had a great community, and it was ideal for creative graphics/application/gaming purposes. If you could imagine it, you could built it. It was fun. Until 2007 when on new mobile web runtimes lacking plugin apis, it didnt work.

When I departed Sencha in late 2012, I had been following CreateJS:EaselJS closely after the launch of Atari Arcade. When I was approached to build a print design editor in HTML5, we explored using CreateJS and many other libraries. For a month, we evaluated graphics libraries and built POCs of the many different aspects we needed within the app. Answering many of these questions:

Image Manipulation?
Rendering Control and Performance?
DOM <-> Canvas interaction?
Platform support?
CreateJS:EaselJS passed these tests very well and we found that it meshed well with a new JS compiler, TypeScript, we were looking to use. 9 months later we shipped and have shipped 8 versions across 2 holiday seasons for Harland Clarkes print partner websites.

CreateJS:EaselJS adapts the Flash DisplayObject API to HTML5 Canvas in an elegant manner yet enables lower level access to control rendering to HTML5 canvas and WebGL. addChild, removeChild, addEventListener, .graphics API, they are all there and work great. Actually the graphics API is so good that I wrote a font and typesetting engine txtjs for CreateJS which we now use for print quality text layout. A runtimes ability to render many SVGPath glyphs programmatically is a tall order, yet the API in CreateJS allowed us to ship with great performance with very little optimization. Provided you have a web runtime that supports Canvas, CreateJS just works and imagination is the limit again. Fun. Refreshingly fun.

Today with the release of CreateJS 0.8.0 the library has reached a level of maturity and is ready for larger scale production use. Actually we have already deployed CreateJS:EaselJS 0.8.0 into all our projects with no issues. I am looking forward to using this library more and more in the years ahead, it is great tech.