GSoC/GCI Archive
Google Summer of Code 2014

The Processing Foundation

License: GNU General Public License (GPL)

Web Page:

Mailing List:

Processing is a programming language, development environment, and online community. Since 2001, Processing has promoted software literacy within the visual arts and visual literacy within technology. Initially created to serve as a software sketchbook and to teach computer programming fundamentals within a visual context, Processing evolved into a development tool for professionals. Today, there are tens of thousands of students, artists, designers, researchers, and hobbyists who use Processing for learning, prototyping, and production.


  • A Git Manager Tool for Processing The aim of this project is to create an integrated Git Manager Tool for Processing. The tool will provide a mix of offline Git features integrated with the features that numerous online repository services provide, most notably GitHub, BitBucket and SourceForge. The tool will consist of an intuitive UI modeled off of Processing's UI, and will not only aim at catering to "pro" Git users, but also act as a medium to introduce new users to the world of Git.
  • Data I/O and Sound Library for p5.js This project will make p5.js a more robust resource for anyone who works with sound and data. I will develop tools that help creative programmers parse and build upon the vast amounts of data at our fingertips. I will also develop a sound library that helps users tap into the emerging potential of the Web Audio API. I will coordinate my efforts with existing projects, conduct research, test, document and demo to ensure that my work makes a lasting impact.
  • GStreamer 1.x Java bindings and migration Processing uses GStreamer to implement a video library. To be able to do this from Java, it needs a binding library, which is currently gstreamer-java. However, GStreamer 0.10, the latest version usable with gstreamer-java, is not supported anymore. Its replacement, the 1.x series, is API incompatible with 0.10, thus, until a gstreamer-java rewrite, Processing is locked to the unsupported 0.10 series. This project consists of this rewrite, and integrating the new library into Processing.
  • Improvements of the Android mode of the Processing Development Environment The goal of the project is to improve Android mode of the Processing Development Environment by implementing some important features that will make the process of creating great Android applications with Processing much more easy, smooth and appealing not only for beginners, but also for those having some experience with Processing and Android.
  • Loom: An Audiovisual Pattern Language for Processing This project will create a language to specify patterns for generative audiovisual works. Such patterns may unfold along a linear timeline, recur cyclically, or be triggered by external events (e.g. sensor input or user interaction). This frees the coder to focus on the rhythm and dynamics of the experience, rather than fussing over synchronization issues and frame rates.
  • Oculus Rift library and updating existing libraries for Processing 2.0 In this proposal, a new Oculus Rift library for Processing is proposed. Oculus Rift is a novel approach of providing a different dimension of interaction with the user, and its integration to the existing creative coding framework will provide exciting ways for artists to harness this interaction. Also the project scope includes updating TUIO client and MSAFluid libraries for Processing 2.0
  • ofSketch - ATTN: openFrameworks ofSketch is a browser-based custom IDE for openFrameworks. Targeted towards new users, ofSketch decreases the openFrameworks barrier to entry by providing a distraction free and barebones text-editor with powerful autocomplete, reference, and API discovery features. ofSketch allows users to spend more time coding and less time with configuration.
  • p5.js IDE An easy to use desktop IDE for creating p5.js projects.
  • PDE X for Processing 3.0 PDE X development had begun under GSoC 2013 as a first step towards building a new and advanced code editor for Processing. For GSoC 2014, I’d like to continue my work on PDE X, adding some more features like on the fly documentation support, code-folding, tooltip hints, code snippets and more. I’ll also be polishing it further with bug fixes and internal optimizations to make PDE X stable and ready to form the basis of the next version of Processing.
  • Processing PDE improvement and Tweak Mode I would like to help the Processing Foundation with the development of a new Development Environment and embedding my previous project 'Tweak Mode' into this environment.
  • Simple Sound Library from Processing I started to develop a simple sound library for Processing at the end of 2013. The library is based on libMethCla, an extendable lightweight C++ sound engine. Low Latency and click free audio is already possible but more plugins and cross platform functionality have to be implemented. The library will provide enough flexibility to operate within the basic realms of digital music paradigms but should be stripped down to the essential functionality to provide easy access for non-professionals.