Processing.js
Project Name
Processing.js
Project Description
Processing.js is a proposed Mozilla-sponsored project, its main purpose is to wrap Java-based language functions into Javascript. The purpose of this is to use visuals on the open web, using standard technologies such as JavaScript and Canvas.
Read more about processing for the web http://processing.org
Read more about Canvas http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html
Read more about Drawing with Canvas https://developer.mozilla.org/en/Drawing_Graphics_with_Canvas
Check out http://9elements.com/io/projects/html5/canvas/ for a cool visual.
Project Leader(s)
Name/User Page | Blog | IRC Nick(s) |
---|---|---|
David Humphrey | blog | humph |
Anna Sobiepanek | blog | annasob |
Andor Salga | blog | andor |
Mickael Medel | blog | medel |
Matthew Lam | blog | mlam19 |
Donghui Liu | blog | dliu53 |
Edward Sin | blog | MinyXO |
Alex Londono | blog | Tyrant911 |
Carlos Xudiera | blog | xudiera |
Daniel Hodgin | blog | dhodgin |
Project Contributor(s)
Related Bugs
Canvas
- Bug 381930 - No repaint inside very large canvas
- Bug 370450 - Safari "canvas" demonstration cause Minefield to hang while page is loaded
- Bug 408372 - <canvas> canvas animation is jerky on Firefox 3 beta 1, Linux x86_64
- Bug 501677 - Drawing lines in big Canvas don't work always
- Bug 518173 - webgl does not build on Darwin/X11 (bad gl.h)
WebGL
Project Details
Processing is an open source programming language and environment for people who want to program images, animation, and interactions. Processing is an alternative to proprietary software tools in the same domain.
Processing.js will:
- enable Processing users to take advantage of the full power of the open web
- serve as a forcing function to drive improvements in key aspects of Mozilla products and technologies, including; JavaScript, Camvas Functionality, applications of Bespin, Ubiquity, Multi-Touch and others
Read more on the project Processing For The Web.
Project Task List is here
Resources
Tools
- Processing (Java) @ http://Processing.org
- Processing JS code @ http://ProcessingJS.org
- Minefield builds for WebGL (build your own or http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-trunk/). See also Vlad's post on this: http://blog.vlad1.com/2009/09/18/webgl-in-firefox-nightly-builds/
- Git, http://Github.com & a great video tutorial on Git @ http://peepcode.com/products/git
- AlertThingy (can plug your Github repo rss feed in and get live updates when other users submit code) @ http://www.alertthingy.com/
- HasCanvas, a Processing JS IDE @ http://HasCanvas.com
Learning
- Recent interview with creators of Processing about the language and its future
- Download the Java version of Processing @ http://processing.org/download/
- Look at what Processing Java is capable of @ http://processing.org/exhibition/
- Look at what has been done with Processing JS so far @ http://processingjs.org/exhibition & @ http://hascanvas.com/#open-about
- Read Processing articles "Getting Started" & "Coordiante System & Shapes" @ http://processing.org/learning/gettingstarted/ & @ http://processing.org/learning/drawing/
- Experiment around with the Processing Java app, use the Basic Examples @ http://processing.org/learning/basics/ and make something cool, interesting, wacky, where-ever your experiment takes you.
- Test whether you can re-create your sketch by copying your code to http://hasCanvas.com You can share your work so others can see what you have done, you can also use hasCanvas to embed your visualization in your web site / blog.
Project Tests
Project html template for creating tests that all look the same ProcessingTestsTemplate
Processing tests available for usage
Student | Date | Test Description |
Andor Salga | Oct 15 2009 | mag() |
Andor Salga | Oct 15 2009 | splice() |
Andor Salga | Oct 15 2009 | focused |
Daniel Hodgin | Oct 21 2009 | shorten() |
Andrew Grimo | Oct 23 2009 | subset() - done for Andor's function, calling the Processing.js file on his Matrix account |
Mickael Medel | Oct 23 2009 | PVector.add() version 1 version 2 |
Mickael Medel | Oct 23 2009 | PVector.sub() version 1 version 2 |
Mickael Medel | Oct 23 2009 | PVector.mult() version 1 version 2 |
Mickael Medel | Oct 23 2009 | PVector.div() version 1 version 2 |
Daniel Hodgin | Oct 24 2009 | expand() |
Project News
Student | Date | Action Item Description |
Andor Salga | September 23 2009 | registered #processing.js on moznet |
Andor Salga | October 8 2009 | Implemented the mag() function in the Processing.js library. |
Andor Salga | October 8 2009 | Implemented the subset() function in the Processing.js library. |
Mickael Medel | October 23 2009 | Implmented a functional but unfinished PVector object in the Processing.js library. |