Hello P5.js

  1. P5 Js Code
  2. P5 Js Reference
  3. P5 Js Library


I’m an aspiring Google Summer of Code applicant. As a longtime user of Processing I’m excited to contribute its development. I intend to submit 3 proposals for your consideration (see summaries below). I would be very interested in any insight or guidance you may have.

An intro to GitHub and GitHub desktop. This refers to the 'Hello World in P5.js' video. P5.js is a JavaScript library for creative coding, with a focus on making coding accessible and inclusive for artists, designers, educators, beginners, and anyone else! P5.js is free and open-source because we believe software, and the tools to learn it, should be accessible to everyone. The p5.js Web Editor is an online platform for learning to code in a visual way. Designed for all ages and abilities, anyone can get started quickly creating, editing, and sharing p5.js sketches.

What Works & What Doesn’t: mobile testing for p5.js

p5.js is capable of taking advantage of mobile-specific user interaction (touch, movement, etc). Currently, however, this functionality does not work seamlessly across devices. As one of p5.js’ leading goals is to create a programming environment accessible for beginners, it is important that inconsistencies be documented and fixed (when possible). Failing to do so could lead to a frustrating, or discouraging learning experience, particularly for those just getting started with code.

To address this, I propose analyzing p5.js’ mobile functionality. This will entail testing mobile-specific features on a variety of operating systems (iOS/Android), mobile browsers (Chrome/Safari/Firefox/Samsung Internet), and form factors (phones/tablets). The goal of this project is to detail the contexts in which p5.js does not behave as expected. Specific issues will be recorded in GitHub. Following evaluation, I will update the reference documentation to include device requirements. The remainder of the summer will be dedicated to finding solutions.


Question- I have access to a number of physical devices for testing; however, I would like to extend my toolkit through the use of an emulator – are there any particular systems you would recommend for this?

Hello, is it me you’re looking for? updating hello.p5js.org

hello.p5js.org is likely to be many users’ first introduction to p5.js and Processing. As these individuals may be brand new to coding, it is important that this webpage be inviting and informative. Further, it should be accessible and work properly across devices.

I would like to modernize hello.p5js.org; however, I have a few questions that will help guide my proposal write-up (see below). The overall goal of this project is to develop content that will get users excited about learning to code, and reduce the risk of outdated dependencies preventing the page from rendering properly.

Questions- The project ideas list mentions “record new video segments” for this page. Do you envision having multiple videos on hello.p5js.org (i.e. you can select and choose different videos from a list), or do you picture this page continuing to host a single enhanced video?

- How do people currently arrive at hello.p5js.org? I haven’t been able to spot links to it from other Processing sites. It would be helpful to know where potential users are coming from.

Easy as Pi: documenting Processing + Raspberry Pi

Raspberry Pi computers are portable and inexpensive. When paired with Processing they can be particularly helpful for creating installation art projects (and more). There is little information online about how to get started using Processing on the Raspberry Pi platform. I have recognized this gap first-hand in my experience as a teaching assistant for a graduate-level tangible computing course.

To make this combination more accessible, I propose a project to create new reference documentation and a small set of examples specific to Raspberry Pi. The documentation would cover the basics, including: the advantages of using Raspberry Pi; setting up the development environment; running sketches; and the potential of using external sensors to control Processing sketches. This work would complement existing documentation and attempt to avoid redundancy. It would also entail testing Processing’s functionality on the Raspberry Pi, exploring the forum for known challenges, and logging issues in Github.

Question:- Do you have any thoughts on where these resources may be saved? On their own page, or a subpage of processing.org?

About Me:

I’m an MSc student at the School of Interactive Arts + Technology at Simon Fraser University in Vancouver, Canada (my website: elginskye.com). I research tangible computing and child computer interaction. I love getting people excited about coding. I teach programming workshops at my university, at NodeSchool, and for Canada Learning Code and am a founder of Women Who Code (Vancouver chapter). Open source tools that lower the barriers to entry, like Processing, are invaluable to this work.

My own background is not in CS but the arts. I learned to code through online tutorials (go Shiffman!), and a programming bootcamp. I have worked as a web developer for a major Canadian Telecom, and completed programming courses in my MSc. I think I could make some valuable contributions to the development and documentation of Processing/P5.js. To get up to speed I have begun contributing to Processing P5’s Github repos.

My goal is to use the skills and knowledge gained through GSOC to encourage more women in my local network to get involved with open source contributing.


I look forward to hearing back from you,

This site introduces tools, methods, and concepts related to creating computational form, algorithmic images, generative art, procedurally generated content, and parametric designs. It introduces computational form in many mediums, primarily as a method of aesthetic experimentation. This site is a companion to the Computational Form elective taught by Justin Bakse in the Parsons Design and Technology program.


General principles, practices, and building blocks useful for all procedural generation endeavors.


Captain tsubasa 2 rom hacking guide download. p5.js

Random Values









Independent chapters exploring specific procedural generation tools, languages, media, and themes.

Tile Maps

pencil + paper

Hello, p5!

p5.js + github

Pixel Data


Turtle Graphics

p5.js + custom library

P5 Js Code

Vector Data


P5 Js Reference



Generating Text

javascript + html

Comp Sound

p5.js + p5.sound

Comp Music


3D Forms


P5 Js Library


p5.js + p5.play

Class Resources

Syllabi, schedules, and lesson plans for the Computational Form class.

Class Notes Spring 2021

Sketch Book Spring 2021

Class Notes Fall 2020

Sketch Book Fall 2020

Class Notes Spring 2020

Sketch Book Spring 2020

Class Notes 2019

Sketch Book 2019

Class Notes 2018

Sketch Book 2018

Class Notes 2017

Sketch Book 2017

Class Notes 2016

Sketch Book 2016