All Projects → processing → P5.js

processing / P5.js

Licence: lgpl-2.1
p5.js is a client-side JS platform that empowers artists, designers, students, and anyone to learn to code and express themselves creatively on the web. It is based on the core principles of Processing. —

Programming Languages

184084 projects - #8 most used programming language
75241 projects

Projects that are alternatives of or similar to P5.js

Processing Android
Processing mode and core library to create Android apps with Processing
Stars: ✭ 643 (-96.11%)
Mutual labels:  learning, education, art, design
The train engine powering the Coding Train website
Stars: ✭ 5,313 (-67.88%)
Mutual labels:  learning, education, art, design
A library for visualization and creative-coding
Stars: ✭ 4,628 (-72.02%)
Mutual labels:  graphics, sound, art, design
Processing Docs
Processing reference, examples, tutorials, and website
Stars: ✭ 346 (-97.91%)
Mutual labels:  graphics, learning, education
A UI/UX framework for creating beautiful applications.
Stars: ✭ 11,870 (-28.24%)
Mutual labels:  graphics, design
📚 The Open Source Education Initiative – a repository with resources for 60+ engineering subjects. Let's make education more open and accessible! 🚀✨
Stars: ✭ 156 (-99.06%)
Mutual labels:  learning, education
A brief computer graphics / rendering course
Stars: ✭ 2,077 (-87.44%)
Mutual labels:  graphics, learning
Awesome Computer Science Opportunities
An awesome list of events and fellowship opportunities for Computer Science students
Stars: ✭ 2,445 (-85.22%)
Mutual labels:  learning, education
Stars: ✭ 141 (-99.15%)
Mutual labels:  learning, education
Awesome Python Applications
💿 Free software that works great, and also happens to be open-source Python.
Stars: ✭ 13,275 (-19.75%)
Mutual labels:  graphics, education
Polyhedra Viewer
Explore the relationships between convex regular-faced polyhedra.
Stars: ✭ 253 (-98.47%)
Mutual labels:  education, art
Godot Texture Painter
A GPU-accelerated texture painter written in Godot 3.0
Stars: ✭ 155 (-99.06%)
Mutual labels:  graphics, art
Reproducing images with geometric primitives.
Stars: ✭ 11,657 (-29.53%)
Mutual labels:  graphics, art
Render high-resolution bitmap images to PCB gerber files
Stars: ✭ 169 (-98.98%)
Mutual labels:  graphics, art
Free Python Games
Free Python Games
Stars: ✭ 2,166 (-86.91%)
Mutual labels:  learning, education
Light dark toggle
An awesome flutter app which artistically animates light and dark mode 😍
Stars: ✭ 175 (-98.94%)
Mutual labels:  art, design
Awesome Learning
Awesome Learning - Learn JavaScript and Front-End Fundamentals at your own pace
Stars: ✭ 216 (-98.69%)
Mutual labels:  learning, education
Sky Design
🌃 the design reference for the developers who care about good design.
Stars: ✭ 199 (-98.8%)
Mutual labels:  art, design
Awesome Books
Stars: ✭ 3,242 (-80.4%)
Mutual labels:  learning, education
Open source 2D node-based raster/vector graphics editor (Photoshop + Illustrator + Houdini = Graphite)
Stars: ✭ 223 (-98.65%)
Mutual labels:  art, design

npm version


Welcome! 👋👋🏿👋🏽👋🏻👋🏾👋🏼

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.

Using the metaphor of a sketch, p5.js has a full set of drawing functionality using the HTML5 canvas element. You’re not limited to the drawing canvas though. You can think of your whole browser page as your sketch, including HTML5 objects for text, input, video, webcam, and sound.

p5.js draws inspiration, wisdom, and guidance from its precursor Processing. However, it is a new interpretation, not an emulation or port. We don't aim to match Processing's set of functionality exactly, allowing ourselves space to deviate and grow in the context of the web.

The website contains an extensive overview of the project, community, documentation, and examples. If you already know the basics of JavaScript or Processing, the p5.js overview wiki page is a good place to start.


We are a community of, and in solidarity with, people from every gender identity and expression, sexual orientation, race, ethnicity, language, neuro-type, size, ability, class, religion, culture, subculture, political opinion, age, skill level, occupation, and background. We acknowledge that not everyone has the time, financial means, or capacity to actively participate, but we recognize and encourage involvement of all kinds. We facilitate and foster access and empowerment. We are all learners.

p5.js is a collaborative project created by many individuals, mostly volunteers, and you are invited to help. All types of involvement are welcome. See the community section to get started! You can also check out the contributor docs for more in-depth details about contributing to different areas of the project, including code, bug fixes, documentation, discussion, and more.

Learn more about our community and read our community statement and code of conduct. You can directly support our work with p5.js by donating to the Processing Foundation.

Get Started

Make your first sketch in the p5.js Editor! Learn more about sketching with p5.js on the Get Started and find everything you can do in the Reference.

To get the complete p5.js library on your own computer, you can download it here. If you are interested in the most recent, less stable version, or even simply in (new!) certain components of p5.js, you can clone this repository and run grunt from the command line to generate the library from source. See the contributor docs for more information about our build process.


If you have found a bug in the p5.js library, you can file it here under the “issues” tab. You can also request new features here. A set of templates for reporting issues and requesting features are provided to assist you (and us!). p5.js is maintained mostly by volunteers, so we thank you for your patience as we try to address your issues as soon as we can. Please post in the correct repository if you can:


Check out for lots more! Here are some quick-links to get started learning p5.js.

  • Get Started: Create and run your first sketch!
  • p5.js overview: An overview of the main features and functionality of p5.js
  • Reference: The functionality supported by p5.js
  • Learn: Tutorials and short, prototypical examples exploring the basics of p5.js
  • Forum: Ask and answers questions about how to make things with p5.js here
  • Libraries: Extend p5 functionality to interact with HTML, manipulate sound, and more!
  • The Coding Train p5.js Tutorials: A huge trove of tutorials created by Dan Shiffman and friends


Stewards are contributors that are particularly involved, familiar, or responsive to certain areas of the project. Their role is to help provide context and guidance to others working on p5.js. If you have a question about contributing to a particular area, you can tag the listed steward in an issue or pull request. They may also weigh in on feature requests and guide the overall direction of their area, with the input of the community. You can read more about the organization of the project at contributor_docs/

Anyone interested can volunteer to be a steward! There are no specific requirements for expertise, just an interest in actively learning and participating. If you’re familiar with one or more parts of this project, open an issue to volunteer as a steward!

Area Steward(s)
Accessibility (Web Accessibility) outofambit
Color outofambit
Core/Environment/Rendering outofambit
DOM outofambit
Events outofambit
Image stalgiag
IO limzykenneth
Math limzykenneth
Typography dhowe
WebGL stalgiag
Build Process/Unit Testing outofambit
Localization Tools outofambit
Friendly Errors outofambit
Website limzykenneth


We recognize all types of contributions. This project follows the all-contributors specification. Instructions to add yourself or add contribution emojis to your name are here. You can also post an issue or comment with the text: @all-contributors please add @YOUR-USERNAME for THING(S) and our nice bot will add you.

Lauren McCarthy

Jason Sigal


Evelyn Eastmond

Daniel Shiffman

Casey Reas

Ben Fry

Kenneth Lim

🐛 💻 📖

kate hollenbach

Stalgia Grigg

Jerel Johnson

Saksham Saxena

saber khan

Daniel Howe

Kevin Siwoff

Atul Varma

Jess Klein

uno seis tres

susan evans

Saskia Freeke

Phoenix Perry

jesse cahn-thompson

Lee T

Chelly Jin




Maya Man

Tega Brain


AlM Chng

aarón montoya-moraga

Cassie Tarakajian

Niklas Peters


Mathura MG

Yining Shi

Jen Kagan

Jiashan Wu

Marc Abbey

K.Adam White

Joe Cridge

Michael Hadley

Todd H. Page

Jared Sprague

💻 📖 💡 💵 ⚠️ 🐛

evelyn masso

Blaize Kaye

Sanchit Kapoor

Oliver Wright

Matthew Kaney


Claire K-V

R. Luke DuBois

Kevin Barabash


Bob Holt

Sarah Groff Hennigh-Palermo

Jordan Shaw


Derek J. Kinsman

harkirat singh


Max Goldstein

XY Feng

Sparsh Paliwal

Austin Cawley-Edwards

📖 💡


Yannick Assogba

John Pasquarello


Kevin Workman


David Wicks

Guillermo Montecinos

Shawn Van Every

Sinan Ascioglu

Abe Pazos


Gene Kogan

Jason Mandel

Mark Russo

Jonathan Dahan

Darius Morawiec

Darby Rathbone


Chiun Hau You

Francesco Bigiarini

Fabian Morón Zirfas

Mike Anderson

Mikael Lindqvist


Max Segal

Tyler Stefanich


Xavier Snelgrove

Gareth Battensby

Taeyoon Choi


Kevin Ho

Harsh Agrawal

Luca Damasco

Sam Lavigne

Epic Jefferson

Caroline Record

Christine de Carteret

Chris Hallberg

David Newbury


Paolo Pedercini

Jason Alderman

Jennifer Jacobs

Sepand Ansari

Val Head

Emily Chen

Ben Moren

Rune Skjoldborg Madsen

Scott Murray

Scott Garner


Craig Pickard


Zach Rispoli

Liu Chang

Cristóbal Valenzuela

Miles Peyton

Golan Levin


Shahriar Rahman Rubayet

Chiciuc Nicușor

Ken Miller

Chandler McWilliams

Jaymz Rhime

Niels Joubert

Utkarsh Tiwari

Arihant Parsoya

Brad Buchanan

Johan Karlsson

Andy Timmons


Brian Boucheron


Kyle McDonald

Antonio Jesús Sánchez Padial


Brad Smith

Vítor Galvão

Devon Rifkin

Emily Xie

Boris Bucha

Petr Brzek


Arsenije Savic

Luke Burgess-Yeo

Sun Lifei


Jimish Fotariya

Jorge Moreno

🐛 💻 📖

Steven Green

Marcus Parsons

Nick Yahnke

Anthony Su

kroko / Reinis Adovičs

Robyn Overstreet

Ben Hinchley

Max Kolyanov

Zeno Zeng



Lionel Ringenbach

Harshil Goel

Joshua Storm Becker



Alejandra Trejo

Prashant Gupta

Kai-han Chang



Christopher Coleman




Jay Gupta

Nitish Bansal

Caroline Hermans

💡 📖

Faith Wuyue Yu

Aatish Bhatia

📖 🐛

Mislav Milicevic

💻 🐛

Yuting Lu


Adil Rabbani

💻 🐛 💡

Pierre Krafft

🐛 💻 📖 💡 👀 ⚠️ 🔧

Zoë Ingram


Aidan Nelson

🐛 💻 📖

Cameron Yick


Tanvi Kumar

🐛 💻 📖 💡

Katsuya Endoh

Kevin Bradley


Justin Kim


Federico Grandi

💻 📖

Freddie Rawlins

💻 📖

Luc de wit

💻 🐛

Mark Nikora


Louis Demange


Sanket Singh

💻 🐛 📖 💡

Oren Shoham


Abhinav Sagar


Jonathan Heindl

💻 💡 🤔 📖

Hirad Sab

💻 🐛 📖 💡

Vishal Singh

📖 💻

Corey Gouker

💻 📖 🐛

Lisa Mabley

📖 💡

Adam Ferriss

💻 📖 🐛 💡

Joshua Marris

📖 💻 📢

Erica Pramer


Vasu Goel

💻 ⚠️

Tokini Irene Fubara


Dhruv Sahnan

💻 📖

Jon Kaufman


Nico Finkernagel

🚇 👀





Sona Lee


Ryan Slade


Mann Shah

Juraj Onuska



Sagar Arora

Rajiv Ranjan Singh

Fenil Gandhi

📖 💡

Akshay Padte

💻 🐛 ⚠️

Satyam Kulkarni



💻 🐛

Sarthak Saxena


Nick McIntyre

🔌 🐛

Amey Bhavsar

🐛 💡

Minjun Kim

🐛 🌍

Fisher Diede




Samuel Alarco Cantos



💻 🐛 📖



Aditya Rachman Putra




Ayush Jain


Summer Rizzo



💻 🐛

Mateusz Swiatkowski

💻 🐛





Kyle James


Abhi Gulati


Jeremy Tuloup


Luis Morales-Navarro






Isaac Durazo


İsmail Namdar

💻 ⚠️



Joseph Aronson

💻 🐛

Haider Ali Punjabi




Takuma Kira

🐛 💻 ⚠️

Mohammad Hussain Nagaria


Tushar Choudhari

📖 💻

Nakul Shahdadpuri


Jacques P. du Toit




Connie Liu

💻 🎨

Zeke Sikelianos


Ramon Jr. Yniguez


Benoît Bouré


Hitesh Kumar


Sampo Rapeli


Nick Müller


Keith Tan


Berke Özgen


Musab Kılıç

💻 ⚠️

Nicholas Marino


Greg Sadetsky




Daniel Michel


Nisar Hassan Naqvi


Joshua Noble


Liam Piesley


Rishabh Taparia

💻 📖

Daniel Sarno


Kunal Kumar Verma

📖 🐛 💻

Bharath Kumar R


Aditya Mohan


Arijit Kundu

🐛 💻 📖

Tanner Dolby


sam delong


Zhao Xin

💻 👀

Sivaram D

📖 💻



Jonathan-David Schröder

🤔 💻

Shubham Kumar


Jean Pierre Charalambos

💻 🔧

Sai Bhushan

💻 📖

Long Phan


Jean-Michaël Celerier


So Sun Park


Daniel Adams

💻 📖



Mohana Sundaram S



💻 📖 💡

Kathryn Isabelle Lawrence

💻 🤔

Joonas Jokinen


Ajaya Mati


Suhas CV


Sanjay Singh Rajpoot


Chris P.


Thomas Herlea

🐛 💻 📖

Simranjeet Singh

💻 📢 🎨 👀

Rahul Mohata


Dave Pagurek

💻 ⚠️

Leo Kamwathi


David Weiss

💻 📢 👀 📖

Chris Thomson

💻 🐛



Aaron George


Alex Lyons


Tyler Jordan



🎨 💻 🔧


📖 💻



Oliver Steele




Paul Wheeler


Nitin Rana


Annie McKinnon

🐛 💻

Jiwon Park (hanpanic)



🐛 💻



Guilherme Silveira


Camille Roux




Thanks goes to these wonderful people (emoji key)!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].