[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-3015":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":22,"archived":23,"fork":23,"defaultBranch":24,"hasWiki":25,"hasPages":23,"topics":26,"createdAt":10,"pushedAt":10,"updatedAt":37,"readmeContent":38,"aiSummary":39,"trendingCount":16,"starSnapshotCount":16,"syncStatus":17,"lastSyncTime":40,"discoverSource":41},3015,"p5.js","processing\u002Fp5.js","processing","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. Looking for p5.js 2.0? http:\u002F\u002Fbeta.p5js.org","http:\u002F\u002Fp5js.org\u002F",null,"JavaScript",23733,3760,486,371,0,2,12,60,10,86,"GNU Lesser General Public License v2.1",false,"main",true,[27,28,29,30,31,32,33,34,35,7,36],"art","creative-coding","design","education","graphics","html","javascript","learning","p5js","sound","2026-06-12 04:00:16","[![npm version](https:\u002F\u002Fbadge.fury.io\u002Fjs\u002Fp5.svg)](https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002Fp5)\n[![All Contributors](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fall-contributors\u002Fprocessing\u002Fp5.js?color=ee8449)](#contributors)\n[![Total Downloads](https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fdt\u002Fp5)](https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002Fp5)\n\n# [p5.js](https:\u002F\u002Fp5js.org)\n\nWelcome! 👋👋🏿👋🏽👋🏻👋🏾👋🏼\n\np5.js is a free and open-source JavaScript library for [accessible](https:\u002F\u002Fp5js.org\u002Fcontribute\u002Faccess) 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!\n\n\u003Ctable>\n\u003Ctr>\n\u003Ctd>\n\n```js\nfunction setup() {\n  createCanvas(400, 400);\n  background(255);\n}\n\nfunction draw() {\n  circle(mouseX, mouseY, 80);\n}\n```\n\n\u003C\u002Ftd>\n\u003Ctd>\n\n\u003Cimg src=\".\u002Fcontributor_docs\u002Fimages\u002Fp5-readme-sketch.png\" width=\"200\" height=\"200\" \u002F>\n\n\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftable>\n\n[Get Started](https:\u002F\u002Fp5js.org\u002Ftutorials\u002Fget-started\u002F) — [Reference](https:\u002F\u002Fp5js.org\u002Freference) — [Tutorials](https:\u002F\u002Fp5js.org\u002Ftutorials) — [Examples](https:\u002F\u002Fp5js.org\u002Fexamples\u002F) — [Libraries](https:\u002F\u002Fp5js.org\u002Flibraries) — [Forum](https:\u002F\u002Fdiscourse.processing.org\u002Fc\u002Fp5js) — [Discord](https:\u002F\u002Fdiscord.p5js.org)\n\n## About\n\np5.js is built and organized to prioritize [accessibility, inclusivity, community, and joy](https:\u002F\u002Fp5js.org\u002Fcommunity). 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](https:\u002F\u002Fp5js.org\u002Freference\u002F) with visual examples. You can find [tutorials](https:\u002F\u002Fp5js.org\u002Ftutorials\u002F) on the p5.js website and start coding right now in the [p5.js web editor](https:\u002F\u002Feditor.p5js.org\u002F). You can extend p5.js with many community-created [libraries](https:\u002F\u002Fp5js.org\u002Flibraries\u002F) that bring different capabilities. Its community provides endless inspiration and support for creators.\n\np5.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.\n\n## Community\n\nThe 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.\n\nLearn more about [our community](https:\u002F\u002Fp5js.org\u002Fcommunity\u002F) and read our community statement and [code of conduct](https:\u002F\u002Fgithub.com\u002Fprocessing\u002Fp5.js\u002Fblob\u002Fmain\u002FCODE_OF_CONDUCT.md). You can directly support our work with p5.js by donating to [the Processing Foundation](https:\u002F\u002Fprocessingfoundation.org\u002Fsupport).\n\n## 🌼 p5.js 2.0 Now Available for Community Testing & Development!\n\nWe are releasing p5.js 2.0 to the community for testing and development! Here’s what you need to know.\n\n* For **reference**: p5.js 1.x reference will stay on [https:\u002F\u002Fp5js.org\u002F](https:\u002F\u002Fp5js.org\u002F), and p5.js 2.x documentation will be on [https:\u002F\u002Fbeta.p5js.org\u002F](https:\u002F\u002Fbeta.p5js.org\u002F)\n* In the p5.js Editor: the **default will continue to be 1.x** until at least August 2026 - more information and discussion on timeline can be found on [this Discourse thread](https:\u002F\u002Fdiscourse.processing.org\u002Ft\u002Fdev-updates-p5-js-2-0-you-are-here\u002F46130) or [this GitHub thread](https:\u002F\u002Fgithub.com\u002Fprocessing\u002Fp5.js\u002Fissues\u002F7488)\n* For updating sketches and add-on libraries: check out [the compatibility add-on libraries and guides](https:\u002F\u002Fgithub.com\u002Fprocessing\u002Fp5.js-compatibility)\n* For **contribution**: `npm latest` will default to 2.x, but the git branches are still separated with `main` on 1.x and `dev-2.0` on 2.x. We will switch the branches when we have updated all automations (including deploying updated documentation to the website). Want to contribute ideas or implementation? Check the [2.x project board](https:\u002F\u002Fgithub.com\u002Forgs\u002Fprocessing\u002Fprojects\u002F21\u002Fviews\u002F8) for an overview of what still needs discussion, and what’s ready for work!\n\n## Issues\n\nIf 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](https:\u002F\u002Fp5js.org\u002Fcontribute\u002Fcontributor_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:\n\n[p5.js](https:\u002F\u002Fgithub.com\u002Fprocessing\u002Fp5.js\u002Fissues) — [p5.js website](https:\u002F\u002Fgithub.com\u002Fprocessing\u002Fp5.js-website\u002Fissues) —- [p5.js web editor](https:\u002F\u002Fgithub.com\u002Fprocessing\u002Fp5.js-web-editor\u002Fissues)\n\np5.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.\n\n## Get Started for Contributors\n\np5.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](https:\u002F\u002Fp5js.org\u002Fcontribute) for more in-depth details about contributing to different areas of the project, including code, bug fixes, documentation, discussion, and more.\n\nA quick Getting Started with the Build and setting up the repository could be found [here](https:\u002F\u002Fp5js.org\u002Fcontribute\u002Fcontributor_guidelines\u002F#quick-get-started-for-developers).\n\n## AI Usage Policy\nThis 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.\n\nMore details can be found in our [AI Usage Policy](.\u002FAI_USAGE_POLICY.md) and [AGENTS.md](.\u002FAGENTS.md).\n\n## Stewards\n\nStewards 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](https:\u002F\u002Fp5js.org\u002Fcontribute\u002Fcontributor_guidelines) and p5.js [Steward Guidelines](https:\u002F\u002Fp5js.org\u002Fcontribute\u002Fsteward_guidelines).\n\nAnyone 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](https:\u002F\u002Fgithub.com\u002Fprocessing\u002Fp5.js\u002Fissues\u002F5719) mentioning which area(s) you are interested in volunteering as a steward! 👋👋👋\n\np5.js was created by [Lauren Lee McCarthy](https:\u002F\u002Fgithub.com\u002Flmccart) 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](https:\u002F\u002Fp5js.org\u002Fpeople\u002F) behind p5.js.\n\nCurrent Lead\u002FMentor\n* [@ksen0](https:\u002F\u002Fgithub.com\u002Fksen0) - p5.js Lead，2024-present\n* [@limzykenneth](https:\u002F\u002Fgithub.com\u002Flimzykenneth) - p5.js Mentor，2023-present\n\nLead\u002FMentor Alumni\n* [@lmccart](https:\u002F\u002Fgithub.com\u002Flmccart) - p5.js Creator\n* [@qianqianye](https:\u002F\u002Fgithub.com\u002Fqianqianye) - p5.js Lead，2021-2025\n* [@outofambit](https:\u002F\u002Fgithub.com\u002Foutofambit) - p5.js Co-Lead 2021-22, Mentor 2022-2023\n* [@mcturner1995](https:\u002F\u002Fgithub.com\u002Fmcturner1995) - p5.js Lead 2020\n\n\u003C!-- STEWARDS-LIST:START - Do not remove or modify this section -->\n| Area | Steward(s) |\n|------|-------------|\n| Maintainers | [@davepagurek](https:\u002F\u002Fgithub.com\u002Fdavepagurek), [@doradocodes](https:\u002F\u002Fgithub.com\u002Fdoradocodes), [@ksen0](https:\u002F\u002Fgithub.com\u002Fksen0), [@limzykenneth](https:\u002F\u002Fgithub.com\u002Flimzykenneth), [@perminder-17](https:\u002F\u002Fgithub.com\u002Fperminder-17), [@qianqianye](https:\u002F\u002Fgithub.com\u002Fqianqianye) |\n| Accessibility | [@calebfoss](https:\u002F\u002Fgithub.com\u002Fcalebfoss) |\n| Accessibility (p5.js-website) | [@coseeian](https:\u002F\u002Fgithub.com\u002Fcoseeian) |\n| Color | [@limzykenneth](https:\u002F\u002Fgithub.com\u002Flimzykenneth) |\n| Core | [@davepagurek](https:\u002F\u002Fgithub.com\u002Fdavepagurek) |\n| DevOps | [@Vaivaswat2244](https:\u002F\u002Fgithub.com\u002FVaivaswat2244), [@error-four-o-four](https:\u002F\u002Fgithub.com\u002Ferror-four-o-four), [@limzykenneth](https:\u002F\u002Fgithub.com\u002Flimzykenneth), [@lirenjie95](https:\u002F\u002Fgithub.com\u002Flirenjie95) |\n| Documentation | [@VANSH3104](https:\u002F\u002Fgithub.com\u002FVANSH3104), [@limzykenneth](https:\u002F\u002Fgithub.com\u002Flimzykenneth), [@perminder-17](https:\u002F\u002Fgithub.com\u002Fperminder-17) |\n| Friendly Errors | [@IIITM-Jay](https:\u002F\u002Fgithub.com\u002FIIITM-Jay) |\n| Graphics (p5.strands) | [@lukeplowden](https:\u002F\u002Fgithub.com\u002Flukeplowden) |\n| Graphics (WebGL) | [@RandomGamingDev](https:\u002F\u002Fgithub.com\u002FRandomGamingDev), [@aferriss](https:\u002F\u002Fgithub.com\u002Faferriss), [@davepagurek](https:\u002F\u002Fgithub.com\u002Fdavepagurek), [@lukeplowden](https:\u002F\u002Fgithub.com\u002Flukeplowden), [@perminder-17](https:\u002F\u002Fgithub.com\u002Fperminder-17) |\n| i18n (es) | [@marioguzzzman](https:\u002F\u002Fgithub.com\u002Fmarioguzzzman) |\n| i18n (hi) | [@Divyansh013](https:\u002F\u002Fgithub.com\u002FDivyansh013), [@takshittt](https:\u002F\u002Fgithub.com\u002Ftakshittt) |\n| i18n (ko) | [@eupthere](https:\u002F\u002Fgithub.com\u002Feupthere), [@hana-cho](https:\u002F\u002Fgithub.com\u002Fhana-cho) |\n| i18n (zh) | [@limzykenneth](https:\u002F\u002Fgithub.com\u002Flimzykenneth), [@lirenjie95](https:\u002F\u002Fgithub.com\u002Flirenjie95) |\n| Math | [@GregStanton](https:\u002F\u002Fgithub.com\u002FGregStanton), [@holomorfo](https:\u002F\u002Fgithub.com\u002Fholomorfo) |\n| p5.js-web-editor | [@kitlord](https:\u002F\u002Fgithub.com\u002Fkitlord) |\n| p5.js-website | [@Nwakaego-Ego](https:\u002F\u002Fgithub.com\u002FNwakaego-Ego), [@clairep94](https:\u002F\u002Fgithub.com\u002Fclairep94), [@doradocodes](https:\u002F\u002Fgithub.com\u002Fdoradocodes), [@ksen0](https:\u002F\u002Fgithub.com\u002Fksen0) |\n| p5.sound.js | [@ogbabydiesal](https:\u002F\u002Fgithub.com\u002Fogbabydiesal) |\n| Shapes | [@GregStanton](https:\u002F\u002Fgithub.com\u002FGregStanton) |\n| Typography | [@dhowe](https:\u002F\u002Fgithub.com\u002Fdhowe) |\n\u003C!-- STEWARDS-LIST:END -->\n\n## Contributors\n\nWe recognize all types of contributions. This project follows the [all-contributors specification](https:\u002F\u002Fgithub.com\u002Fall-contributors\u002Fall-contributors) and the [Emoji Key](https:\u002F\u002Fgithub.com\u002Fall-contributors\u002Fall-contributors\u002Fblob\u002Fmaster\u002Fdocs\u002Femoji-key.md) ✨ for contribution types. Instructions to add yourself or add contribution emojis to your name are [here](https:\u002F\u002Fgithub.com\u002Fprocessing\u002Fp5.js\u002Fissues\u002F2309). 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](https:\u002F\u002Fgithub.com\u002Fall-contributors\u002Fall-contributors\u002Fblob\u002Fmaster\u002Fdocs\u002Femoji-key.md)) and our nice bot will add you to [CONTRIBUTORS.md](.\u002FCONTRIBUTORS.md) automatically!\n\n![Grid of avatars representing contributors to the p5.js project](contributors.png)\n\nThanks to all the wonderful contributors! 💓\n","p5.js是一个基于JavaScript的客户端平台，旨在帮助艺术家、设计师、学生以及任何人学习编程并在网络上进行创意表达。它继承了Processing的核心原则，提供了丰富的绘图工具，并支持创建音频-视觉、交互式、实验性和生成性作品。项目强调易用性、可访问性和包容性，拥有详尽的文档和众多示例教程，适合教育场景中教授编程基础或用于个人创作实践。此外，通过社区开发的各种库，用户可以轻松扩展功能，满足不同需求。","2026-06-11 02:52:12","top_language"]