p5.js


p5.js (https://p5js.org) is an open source JavaScript framework that makes creating visual media with code on the web accessible to artists, designers, educators, and beginners. p5.js is free and open-source because we believe software, and the tools to learn it, should be accessible to everyone. p5.js uses a metaphor of a sketchbook to make sketching with code as intuitive as sketching in a designer’s notebook. Like making a mark on paper, a single line of code puts a circle on the screen, another changes its color, and a third makes it animate. p5.js has over 1.5 million users, is taught in K-12 through universities worldwide, and used by hobbyists and professionals alike.

p5.js is a project that emphasizes inclusivity and access in its community of users and contributors. Historically, there has been a lack of representation of women and people of color in both the arts and in technology, and too often efforts to remedy come as afterthoughts. By contrast, p5.js holds diversity and inclusion as core values upon which the software is built. It attempts to model what an open software and artistic project could look like by gaining strength through the range of ideas and opinions from its contributors.  Through the clear community statement (https://p5js.org/community), foreign language translation projects, making the software completely screen-reader accessible for users with visual impairments, and the outreach efforts lowering barriers to entry for women, people of color, and people with disabilities as both users and contributors to the tool, the p5.js community aims to see our values in action.

Visit
p5js.org
Documentation on Medium



I have been developing p5.js for six years, in collaboration with a large community of contributors. p5.js is an open source JavaScript framework that makes creating visual media with code on the web accessible to artists, designers, educators, and beginners. It is a reinterpretation of Processing for the web. It is taught in K-12 to universities worldwide, in art and design programs as well as engineering programs.

p5.js is not only a web programming language, it is a project that emphasizes inclusion, diversity, and access in its community of users and developers. Historically, there has been a lack of representation of women and people of color in both the arts and in technology, and too often efforts to remedy come as afterthoughts. By contrast, p5.js holds diversity and inclusion as a core value upon which the software is built, allowing all decisions to flow from this. p5.js attempts to model what a truly open software and artistic project could look like, gaining strength through the range of ideas and opinions its contributors bring to it. These goals are further supported by the Processing Foundation, a non-profit organization that I direct, along with Professor Casey Reas, Ben Fry, and Daniel Shiffman.

This work involves everything from maintaining a codebase, website, and documentation, to leading diversity advocacy and outreach initiatives, leading workshops and organizing events, and mentoring student contributors.

Images
p5js.org homepage with artwork by Matthew Kaney, Signing Coders led by Taeyoon Choi, p5.js Contributor's Conference at CMU STUDIO for Creative Inquiry, CC Fest at UCLA led by Saber Khan, studying developer language with Emily Chen at p5.js Contributor's Conference, advanced workshop at CC Fest, beginner workshop at CC Fest, Claire Kearney-Volpe testing p5.js accessibility, Code Liberation Foundation's p5.js workshops for female, non-binary, and femme artists led by Saskia Freeke, Code/Art Miami workshop led by Cassie Tarakajian, brainstorming at Learning To Teach conference, workshops in Chile led by Aarón Montoya-Moraga, experimenting with p5.js at NYU ITP, Tunapanda Institute in Nairobi, workplace study group Getting Started with p5.js, UCLA DMA.