Programming p5.js

Online Reference Materials

p5.js is a JavaScript library which makes coding accessible for artists, designers, educators, and beginners. It is a member of the Processing family of free, open-source arts-engineering toolkits. Here are some quick links you may find helpful:


Textbooks and Examples Shown in Class

This semester we will be dipping into the following two textbooks:

These books provide example programs written for p5.js on Github. We will encounter and study many of these examples in class:

Regarding the Learning Processing book, please note the following:

  • Dan Shiffman has made an excellent website providing very helpful videos.
  • The (paper) book uses examples written in Java, but Shiffman’s Github provides versions of those examples in both Java and JavaScript. There are minor differences, but the underlying concepts are the same. 

External Tutorials

If you’re feeling lost or falling behind, you may find another online tutorial helpful. It can sometimes help to hear the same material explained by someone else. Check out:


Similar Curricula

p5.js is used around the world for introductory education in creative coding and media arts. The people who develop p5.js are themselves educators, and in the open-source spirit of the project, make their curricula available online. You may even recognize some of their exercises in our class. Curricula by external educators include:

Here are some other reference curricula for introductory programming education (Note: non-JavaScript):

  • Dilsun Kaynar & Penny Anderson’s CMU 15-110 (Python)
  • Roger Dannenberg & Jim Roberts’ CMU 15-104, Fall 2014 (Python & Processing)
  • David Kosbie’s CMU 15-112 (Python)