p5.js README

The project's README from github.com/processing/p5.js. As one markdown file: README.md.

npm version All Contributors Total Downloads

p5.js

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

p5.js is a free and open-source JavaScript library for accessible creative coding. It is a nurturing community, an approachable language, an exploratory tool, an accessible environment, an inclusive platform, welcoming and playful for artists, designers, educators, beginners, and anyone else!

function setup() {
  createCanvas(400, 400);
  background(255);
}

function draw() {
  circle(mouseX, mouseY, 80);
}

Get Started — Reference — Tutorials — Examples — Libraries — Forum — Discord

About

p5.js is built and organized to prioritize accessibility, inclusivity, community, and joy. Similar to sketching, p5.js has a full set of tools to draw. It also supports creating audio-visual, interactive, experimental, and generative works for the web. p5.js enables thinking of a web page as your sketch. p5.js is accessible in multiple languages and has an expansive documentation with visual examples. You can find tutorials on the p5.js website and start coding right now in the p5.js web editor. You can extend p5.js with many community-created libraries that bring different capabilities. Its community provides endless inspiration and support for creators.

p5.js encourages iterative and exploratory code for creative expression. Its friendly, diverse community shares art, code, and learning resources to help elevate all voices. We share our values in open source and access for all, to learn, create, imagine, design, share and code freely.

Community

The p5.js community shares an interest in exploring the creation of art and design with technology. We are a community of, and in solidarity with, people from every gender identity and expression, sexual orientation, race, ethnicity, language, neuro-type, size, disability, class, caste, religion, culture, subculture, immigration status, age, skill level, occupation, and background. We stand in solidarity with justice and liberation movements. We work to acknowledge, dismantle, and prevent barriers to access p5.js code and the p5.js community.

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.

Issues

If you have found a bug in the p5.js library or want to request new features, feel free to file an issue! See our contributor guidelines for a full reference of our contribution process. A set of templates for reporting issues and requesting features are provided to assist you (and us!). Different parts of p5.js are in different repositories. You can open an issue on each of them through these links:

p5.js — p5.js website —- p5.js web editor

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.

Get Started for Contributors

p5.js is a collaborative project with many contributors, mostly volunteers, and you are invited to help. All types of involvement are welcome. See the contribute for more in-depth details about contributing to different areas of the project, including code, bug fixes, documentation, discussion, and more.

A quick Getting Started with the Build and setting up the repository could be found here.

AI Usage Policy

This project does not accept fully AI-generated contributions. AI tools may be used assistively only. As a contributor, you should be able to understand and take responsibility for changes you make to the codebase.

More details can be found in our AI Usage Policy and AGENTS.md.

Stewards

Stewards are contributors who 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 in our p5.js Contributor Guidelines and p5.js Steward Guidelines.

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 or interested in actively learning and participating in some of the p5.js areas below, please reply to this issue mentioning which area(s) you are interested in volunteering as a steward! 👋👋👋

p5.js was created by Lauren Lee McCarthy in 2013 as a new interpretation of Processing for the context of the web. Since then we have allowed ourselves space to deviate and grow, while drawing inspiration from Processing and our shared community. p5.js is sustained by a community of contributors, with support from the Processing Foundation. p5.js follows a rotating leadership model started in 2020. Learn more about the people behind p5.js.

Current Lead/Mentor

Lead/Mentor Alumni

Area Steward(s)
Maintainers @davepagurek, @doradocodes, @ksen0, @limzykenneth, @perminder-17
Accessibility @calebfoss
Accessibility (p5.js-website) @coseeian
Color @limzykenneth
Core @davepagurek
DevOps @Vaivaswat2244, @limzykenneth, @lirenjie95
Documentation @limzykenneth, @perminder-17
Graphics (WebGL) @RandomGamingDev, @davepagurek, @perminder-17
Graphics (WebGPU) @aashu2006, @davepagurek, @perminder-17
i18n (es) @marioguzzzman
i18n (hi) @Divyansh013
i18n (ko) @eupthere, @JiwonHaam
i18n (zh) @limzykenneth, @lirenjie95
p5.js-web-editor @kitlord
p5.js-website @Nwakaego-Ego, @clairep94, @doradocodes, @ksen0
p5.sound.js @ogbabydiesal
Typography @dhowe

Contributors

We recognize all types of contributions. This project follows the all-contributors specification and the Emoji Key ✨ for contribution types. Instructions to add yourself or add contribution emojis to your name are here. You can also post an issue or comment on a pull request with the text: @all-contributors please add @YOUR-USERNAME for THINGS (where THINGS is a comma-separated list of entries from the list of possible contribution types) and our nice bot will add you to CONTRIBUTORS.md automatically!

Grid of avatars representing contributors to the p5.js project

Thanks to all the wonderful contributors! 💓

p5.js (processing/p5.js)

Searching Database…

24.1K ·GitHub
这是什么?p5.js 是一个免费的开源 JavaScript 库,用于创意编程。它让艺术家、设计师、教育工作者和初学者可以直接在网页上绘制图形、制作声音和交互作品。
它是框架还是库?它是一个 JavaScript 库(不是框架)。你可以把它引入页面,然后调用其中的绘图函数。它的设计以原版 Processing 语言为蓝本,把这门语言带到了网页上。
我该怎么开始写草图?你可以直接在 p5.js 网页编辑器里开始写代码,无需安装任何东西;也可以按照 Get Started 指南,把这个库添加到网页或项目中。
这是给谁用的?面向想以易上手的方式学习编程、创作视觉、声音和交互作品的艺术家、设计师、教育工作者、学生和初学者。
我能用额外功能扩展 p5.js 吗?可以。社区创建了很多库,可以在 p5.js 核心库的基础上增加额外功能。
p5.js 支持声音吗?支持。它包含 p5.sound.js,用于视听和声音类的创意作品,是项目长期维护的功能领域之一。
有没有不用本地安装就能用的可视化编辑器?有。p5.js 网页编辑器让你无需在本地安装任何东西,就能直接在浏览器中编写和运行草图。
p5.js 项目由谁负责?p5.js 由 Lauren Lee McCarthy 于 2013 年创建。现在项目采用轮值领导模式,目前的领导和导师角色由社区维护者担任。
Creator
processing
Size
179.6 MB
Stars
24.1K
Age
13y
Commits · 90 Days