a port of the Processing Visualization Language

Processing.js v1.0 Released

18 Nov 2010

This is the one you've been waiting for. The Processing.js team is pleased to announce the release of Processing.js version 1.0.  Since its original release by John Resig in 2008, over 1,000 bug fixes, features, and under-the-hood improvements were made.  The goal of Processing.js is parity with Processing, ease of use in the web environment, wide compatibility with modern web browsers, and great performance.  Processing.js is now feature complete with Processing, with a very few exceptions (see the Reference page for details).

This release represents years of work by a very dedicated developer and user community. With Processing.js we hope to expand the reach of Processing on the web, and bring a new generation of developers to this wonderful language.  The open web will be a much easier place to do graphical programming, starting today.

We're proud of Processing.js and hope you'll enjoy using it as much as we do!

Download the code here and get started learning how to use Processing.js.


  • Added source level documentation for functions
  • Added reference pages for missing language features
  • Added sketchpad.cc to list of dev tools
  • Added saveFrame()
  • Added remaining PImage features
  • Added compile-time optimizations for constants, functions, closures
  • Added PShapeSVG(new XMLElemnt(svg string))
  • Added check for missing use of 'new' to Processing() calls
  • Added test for casting and negative ints
  • Added cursor URL example to test suite
  • Added Makefile target for examples packaging
  • Created wiki for processingjs.org
  • Created quick start guides for Processing and JavaScript developers
  • Fixed keyReleased so it doesn't fire when key is held down
  • Fixed neighborhood.html
  • Fixed translate() call ordering with background()
  • Fixed issue with loadStrings() so it doesn't remove last character
  • Fixed matrix operations run in setup such that they are not reset in draw
  • Fixed remaining KNOWN-FAILURES that were fixable
  • Fixed performance issue with Image() function when mask and tint aren't specified
  • Fixed performance issue with text$line
  • Fixed SVG to work properly with negative widths
  • Fixed PShapeSVG/PShape to be public
  • Fixes to allow WebKit to load 3D sketches
  • Fixed PImage.mask to work with objects generated by PGraphics.get
  • Fixes to support IE9
  • Fixed parser to accept additional float literal formats
  • Fixed performance issue with ArrayList
  • Fixed issue with abstract methods
  • Fixed text 3D error
  • Fixed mouseX/mouseY values to take scrollbars into account
  • Fixed parser bug with discarded processing methods
  • Fixed performance issue with uniformMatrix and vertexAttributePointer
  • Fixed (int) casting
  • Fixed non-power-of-two texture load issue
  • Fixed all non-power-of-two images in source tree
  • Fixed text-width example in Firefox and Ubuntu
  • Fixed method invocation using this and super
  • Fixed js linting issues
  • Fixed ref test runner for Uint8Array
  • Fixed Learning IDE frame rate bug
  • Removed .svn dirs from source tree
  • Updated fake-dom.js for curContext.setTransform
  • Updated processingjs.org (many fixes, corrections)
  • Updated documentation for loadImage, requestImage, @pjs preloading
Fork me on GitHub