diff --git a/.all-contributorsrc b/.all-contributorsrc index 6ca04d4dd6..55809f85bd 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -6013,7 +6013,9 @@ "profile": "https://aboutmonica.com", "contributions": [ "talk", - "example" + "example", + "doc", + "bug" ] }, { @@ -6126,6 +6128,323 @@ "contributions": [ "doc" ] + }, + { + "login": "PaperPrototype", + "name": "Abdiel Lopez", + "avatar_url": "https://avatars.githubusercontent.com/u/48071553?v=4", + "profile": "https://github.com/PaperPrototype", + "contributions": [ + "mentoring" + ] + }, + { + "login": "PimTournaye", + "name": "Pim Tournaye", + "avatar_url": "https://avatars.githubusercontent.com/u/56040665?v=4", + "profile": "https://github.com/PimTournaye", + "contributions": [ + "code" + ] + }, + { + "login": "Martin-Lorentzon", + "name": "Martin Lorentzon", + "avatar_url": "https://avatars.githubusercontent.com/u/106841201?v=4", + "profile": "https://github.com/Martin-Lorentzon", + "contributions": [ + "bug" + ] + }, + { + "login": "DenisovichDev", + "name": "Rishi", + "avatar_url": "https://avatars.githubusercontent.com/u/66998096?v=4", + "profile": "https://denisovichdev.github.io/link-tree", + "contributions": [ + "code", + "bug" + ] + }, + { + "login": "Forchapeatl", + "name": "FORCHA PEARL", + "avatar_url": "https://avatars.githubusercontent.com/u/24577149?v=4", + "profile": "https://www.linkedin.com/in/forcha-pearl/", + "contributions": [ + "code" + ] + }, + { + "login": "c-dacanay", + "name": "c-dacanay", + "avatar_url": "https://avatars.githubusercontent.com/u/54914834?v=4", + "profile": "https://github.com/c-dacanay", + "contributions": [ + "design", + "eventOrganizing", + "example" + ] + }, + { + "login": "mathewpan2", + "name": "mathewpan2", + "avatar_url": "https://avatars.githubusercontent.com/u/112679001?v=4", + "profile": "https://github.com/mathewpan2", + "contributions": [ + "code" + ] + }, + { + "login": "cog25", + "name": "cog25", + "avatar_url": "https://avatars.githubusercontent.com/u/74242561?v=4", + "profile": "https://github.com/cog25", + "contributions": [ + "translation" + ] + }, + { + "login": "AaratiAkkapeddi", + "name": "Aarati Akkapeddi ", + "avatar_url": "https://avatars.githubusercontent.com/u/7389189?v=4", + "profile": "https://github.com/AaratiAkkapeddi", + "contributions": [ + "code" + ] + }, + { + "login": "mayaarguelles", + "name": "Maya Arguelles", + "avatar_url": "https://avatars.githubusercontent.com/u/29130029?v=4", + "profile": "https://mayaarguelles.com/", + "contributions": [ + "code" + ] + }, + { + "login": "shourysingh07", + "name": "Shoury Singh", + "avatar_url": "https://avatars.githubusercontent.com/u/105987613?v=4", + "profile": "https://github.com/shourysingh07", + "contributions": [ + "code" + ] + }, + { + "login": "valkyriedimension", + "name": "Melody Sharp", + "avatar_url": "https://avatars.githubusercontent.com/u/139258864?v=4", + "profile": "https://github.com/valkyriedimension", + "contributions": [ + "bug" + ] + }, + { + "login": "TiborUdvari", + "name": "Tibor Udvari", + "avatar_url": "https://avatars.githubusercontent.com/u/1434442?v=4", + "profile": "http://tiborudvari.com", + "contributions": [ + "code" + ] + }, + { + "login": "willallstet", + "name": "willallstet", + "avatar_url": "https://avatars.githubusercontent.com/u/67874779?v=4", + "profile": "http://willallstetter.com", + "contributions": [ + "doc" + ] + }, + { + "login": "ashwanidey", + "name": "Ashwani Dey", + "avatar_url": "https://avatars.githubusercontent.com/u/110251931?v=4", + "profile": "https://github.com/ashwanidey", + "contributions": [ + "doc" + ] + }, + { + "login": "ibrand", + "name": "Ilona Brand", + "avatar_url": "https://avatars.githubusercontent.com/u/3953117?v=4", + "profile": "https://github.com/ibrand", + "contributions": [ + "bug" + ] + }, + { + "login": "aleannab", + "name": "Antoinette Bumatay-Chan", + "avatar_url": "https://avatars.githubusercontent.com/u/342223?v=4", + "profile": "http://www.antoinettecreates.com", + "contributions": [ + "doc" + ] + }, + { + "login": "benpalevsky", + "name": "benpalevsky", + "avatar_url": "https://avatars.githubusercontent.com/u/25121735?v=4", + "profile": "https://github.com/benpalevsky", + "contributions": [ + "doc" + ] + }, + { + "login": "jeanetteandrews", + "name": "jeanette", + "avatar_url": "https://avatars.githubusercontent.com/u/12685889?v=4", + "profile": "http://jeanetteandre.ws", + "contributions": [ + "code" + ] + }, + { + "login": "williamthazard", + "name": "William Hazard", + "avatar_url": "https://avatars.githubusercontent.com/u/105560469?v=4", + "profile": "https://github.com/williamthazard", + "contributions": [ + "example" + ] + }, + { + "login": "visheshrwl", + "name": "Vishesh Rawal", + "avatar_url": "https://avatars.githubusercontent.com/u/92795514?v=4", + "profile": "https://github.com/visheshrwl", + "contributions": [ + "bug", + "doc", + "code" + ] + }, + { + "login": "calliecramer", + "name": "Callie", + "avatar_url": "https://avatars.githubusercontent.com/u/46458628?v=4", + "profile": "https://github.com/calliecramer", + "contributions": [ + "doc", + "code" + ] + }, + { + "login": "jaredberghold", + "name": "Jared Berghold", + "avatar_url": "https://avatars.githubusercontent.com/u/13672640?v=4", + "profile": "https://github.com/jaredberghold", + "contributions": [ + "doc" + ] + }, + { + "login": "computationalmama", + "name": "computational mama", + "avatar_url": "https://avatars.githubusercontent.com/u/10388784?v=4", + "profile": "http://computationalmama.xyz", + "contributions": [ + "code" + ] + }, + { + "login": "ff6347", + "name": "Fabian Morón Zirfas", + "avatar_url": "https://avatars.githubusercontent.com/u/315106?v=4", + "profile": "https://fabianmoronzirfas.me", + "contributions": [ + "doc", + "code" + ] + }, + { + "login": "lukeplowden", + "name": "Luke Plowden", + "avatar_url": "https://avatars.githubusercontent.com/u/62835749?v=4", + "profile": "http://www.lukeplowden.com", + "contributions": [ + "code" + ] + }, + { + "login": "martinleopold", + "name": "Martin Leopold Groedl", + "avatar_url": "https://avatars.githubusercontent.com/u/1692826?v=4", + "profile": "https://groedl.xyz", + "contributions": [ + "bug", + "code" + ] + }, + { + "login": "ashish1729", + "name": "ashish singh", + "avatar_url": "https://avatars.githubusercontent.com/u/10610651?v=4", + "profile": "https://www.linkedin.com/in/ashish1729/", + "contributions": [ + "code" + ] + }, + { + "login": "blackboxlogic", + "name": "blackboxlogic", + "avatar_url": "https://avatars.githubusercontent.com/u/31355456?v=4", + "profile": "http://alexhennings.dev", + "contributions": [ + "doc" + ] + }, + { + "login": "zs-5", + "name": "ℤ", + "avatar_url": "https://avatars.githubusercontent.com/u/177980470?v=4", + "profile": "https://github.com/zs-5", + "contributions": [ + "doc" + ] + }, + { + "login": "Dhanush111", + "name": "dhanush", + "avatar_url": "https://avatars.githubusercontent.com/u/51503598?v=4", + "profile": "https://github.com/Dhanush111", + "contributions": [ + "doc" + ] + }, + { + "login": "mahaidong", + "name": "ma haidong", + "avatar_url": "https://avatars.githubusercontent.com/u/5458532?v=4", + "profile": "http://caad.xyz", + "contributions": [ + "bug", + "code" + ] + }, + { + "login": "Rishab87", + "name": "Rishab Kumar Jha", + "avatar_url": "https://avatars.githubusercontent.com/u/138858208?v=4", + "profile": "https://github.com/Rishab87", + "contributions": [ + "bug", + "code" + ] + }, + { + "login": "ImRAJAS-SAMSE", + "name": "Rajas Samse", + "avatar_url": "https://avatars.githubusercontent.com/u/122066293?v=4", + "profile": "https://github.com/ImRAJAS-SAMSE", + "contributions": [ + "code", + "doc" + ] } ], "repoType": "github", diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 87b554fdca..45b15440c0 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -18,8 +18,8 @@ Resolves #[Add issue number here] --> - [ ] `npm run lint` passes -- [ ] [Inline documentation] is included / updated +- [ ] [Inline reference] is included / updated - [ ] [Unit tests] are included / updated -[Inline documentation]: https://github.com/processing/p5.js/blob/main/contributor_docs/inline_documentation.md +[Inline reference]: https://p5js.org/contribute/contributing_to_the_p5js_reference/ [Unit tests]: https://github.com/processing/p5.js/tree/main/contributor_docs#unit-tests diff --git a/README.md b/README.md index 3fce275d82..19505fbabc 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ [![npm version](https://badge.fury.io/js/p5.svg)](https://www.npmjs.com/package/p5) -[![All Contributors](https://img.shields.io/github/all-contributors/processing/p5.js?color=ee8449&style=flat-square)](#contributors) +[![All Contributors](https://img.shields.io/github/all-contributors/processing/p5.js?color=ee8449)](#contributors) [![Total Downloads](https://img.shields.io/npm/dt/p5)](https://www.npmjs.com/package/p5) # [p5.js](https://p5js.org) @@ -32,11 +32,11 @@ function draw() { -[Get Started](https://p5js.org/get-started) — [Reference](https://p5js.org/reference) — [Tutorials](https://p5js.org/tutorials) — [Examples](https://p5js.org/examples/) — [Libraries](https://p5js.org/libraries) — [Forum](https://discourse.processing.org/c/p5js) — [Discord](https://discord.gg/SHQ8dH25r9) +[Get Started](https://p5js.org/tutorials/get-started/) — [Reference](https://p5js.org/reference) — [Tutorials](https://p5js.org/tutorials) — [Examples](https://p5js.org/examples/) — [Libraries](https://p5js.org/libraries) — [Forum](https://discourse.processing.org/c/p5js) — [Discord](https://discord.gg/SHQ8dH25r9) ## About -p5.js is built and organized to prioritize [accessibility, inclusivity, community, and joy](https://p5js.org/community). 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://p5js.org/reference/) with visual examples. You can find [tutorials](https://p5js.org/learn/) on the p5.js website and start coding right now in the [p5.js web editor](https://editor.p5js.org/). You can extend p5.js with many community-created [libraries](https://p5js.org/libraries/) that bring different capabilities. Its community provides endless inspiration and support for creators. +p5.js is built and organized to prioritize [accessibility, inclusivity, community, and joy](https://p5js.org/community). 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://p5js.org/reference/) with visual examples. You can find [tutorials](https://p5js.org/tutorials/) on the p5.js website and start coding right now in the [p5.js web editor](https://editor.p5js.org/). You can extend p5.js with many community-created [libraries](https://p5js.org/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. @@ -71,17 +71,18 @@ Anyone interested can volunteer to be a steward! There are no specific requireme p5.js was created by [Lauren Lee McCarthy](https://github.com/lmccart) 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, and [Qianqian Ye](https://github.com/qianqianye) has been leading p5.js since 2021. Learn more about the [people](https://p5js.org/people/) behind p5.js. Current Lead/Mentor -* [@qianqianye](https://github.com/qianqianye) - p5.js Lead,2021-present +* [@ksen0](https://github.com/ksen0) - p5.js Lead,2024-present * [@limzykenneth](https://github.com/limzykenneth) - p5.js Mentor,2023-present Lead/Mentor Alumni * [@lmccart](https://github.com/lmccart)- p5.js Creator +* [@qianqianye](https://github.com/qianqianye) - p5.js Lead,2021-2024 * [@outofambit](https://github.com/outofambit) - p5.js Co-Lead 2021-22, Mentor 2022-2023 * [@mcturner1995](https://github.com/mcturner1995) - p5.js Lead 2020 | Area | Steward(s) | | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | -| Overall | [@qianqianye](https://github.com/qianqianye) | +| Overall | [@ksen0](https://github.com/ksen0) | | [Accessibility](https://github.com/processing/p5.js/tree/main/src/accessibility) | [@calebfoss](https://github.com/calebfoss), [@cosmicbhejafry](https://github.com/cosmicbhejafry), [@apoorva-a98](https://github.com/apoorva-a98), [@tedkmburu](https://github.com/tedkmburu), [@Zarkv](https://github.com/Zarkv), [@SkylerW99](https://github.com/SkylerW99), [@itsjoopark](https://github.com/itsjoopark), [@hannahvy](https://github.com/hannahvy), [@nhasalajoshi](https://github.com/nhasalajoshi)| | [Color](https://github.com/processing/p5.js/tree/main/src/color) | [@paulaxisabel](https://github.com/paulaxisabel), [@SoundaryaKoutharapu](https://github.com/SoundaryaKoutharapu), [@mrbrack](https://github.com/mrbrack), [@TJ723](https://github.com/TJ723), [@Zarkv](https://github.com/Zarkv), [@SkylerW99](https://github.com/SkylerW99), [@ramya202000](https://github.com/ramya202000), [@hannahvy](https://github.com/hannahvy), [@robin-haxx](https://github.com/robin-haxx), [@hiddenenigma](https://github.com/hiddenenigma) | | [Core](https://github.com/processing/p5.js/tree/main/src/core)/Environment/Rendering | [@limzykenneth](https://github.com/limzykenneth), [@davepagurek](https://github.com/davepagurek), [@ChihYungChang](https://github.com/ChihYungChang), [@teragramgius](https://github.com/teragramgius), [@tuminzee](https://github.com/tuminzee), [@Zarkv](https://github.com/Zarkv), [@robin-haxx](https://github.com/robin-haxx), [@Gaurav-1306](https://github.com/Gaurav-1306) | @@ -1016,7 +1017,7 @@ We recognize all types of contributions. This project follows the [all-contribut PiyushChandra17
PiyushChandra17

💻 🐛 👀 Daniel Grantham
Daniel Grantham

💻 - Monica Powell
Monica Powell

📢 💡 + Monica Powell
Monica Powell

📢 💡 📖 🐛 Rohan Julka
Rohan Julka

💻 Mr. Algorithm
Mr. Algorithm

📖 sambensim
sambensim

📖 @@ -1033,6 +1034,52 @@ We recognize all types of contributions. This project follows the [all-contribut Manan Arora
Manan Arora

📖 Serena20003
Serena20003

💻 Souvik Kumar
Souvik Kumar

📖 + Abdiel Lopez
Abdiel Lopez

🧑‍🏫 + Pim Tournaye
Pim Tournaye

💻 + Martin Lorentzon
Martin Lorentzon

🐛 + + + Rishi
Rishi

💻 🐛 + FORCHA PEARL
FORCHA PEARL

💻 + c-dacanay
c-dacanay

🎨 📋 💡 + mathewpan2
mathewpan2

💻 + cog25
cog25

🌍 + Aarati Akkapeddi
Aarati Akkapeddi

💻 + + + Maya Arguelles
Maya Arguelles

💻 + Shoury Singh
Shoury Singh

💻 + Melody Sharp
Melody Sharp

🐛 + Tibor Udvari
Tibor Udvari

💻 + willallstet
willallstet

📖 + Ashwani Dey
Ashwani Dey

📖 + + + Ilona Brand
Ilona Brand

🐛 + Antoinette Bumatay-Chan
Antoinette Bumatay-Chan

📖 + benpalevsky
benpalevsky

📖 + jeanette
jeanette

💻 + William Hazard
William Hazard

💡 + Vishesh Rawal
Vishesh Rawal

🐛 📖 💻 + + + Callie
Callie

📖 💻 + Jared Berghold
Jared Berghold

📖 + computational mama
computational mama

💻 + Fabian Morón Zirfas
Fabian Morón Zirfas

📖 💻 + Luke Plowden
Luke Plowden

💻 + Martin Leopold Groedl
Martin Leopold Groedl

🐛 💻 + + + ashish singh
ashish singh

💻 + blackboxlogic
blackboxlogic

📖 + ℤ

📖 + dhanush
dhanush

📖 + ma haidong
ma haidong

🐛 💻 + Rishab Kumar Jha
Rishab Kumar Jha

🐛 💻 + + + Rajas Samse
Rajas Samse

💻 📖 diff --git a/contributor_docs/README.md b/contributor_docs/README.md index 52f7849367..670c00f91f 100644 --- a/contributor_docs/README.md +++ b/contributor_docs/README.md @@ -1,24 +1,24 @@ # 🌸 Welcome! 🌺 -Thanks for your interest in contributing to p5.js! Our community values contributions of all forms and seeks to expand the meaning of the word "contributor" as far and wide as possible. It includes documentation, teaching, writing code, making art, writing, design, activism, organizing, curating, or anything else you might imagine. [Our community page](https://p5js.org/community/#contribute) gives an overview of some different ways to get involved and contribute. +Thanks for your interest in contributing to p5.js! p5.js is a collaborative project with contributions from many volunteers. Our community is always looking for contributors and appreciates involvement in all forms. We acknowledge that not everyone has the capacity, time, or financial means to participate actively or in the same ways. We want to expand the meaning of the word “contributor.” Whether you're an experienced developer or just starting out, we value your involvement. Your unique perspectives, skills, and experiences enrich our community, and we encourage you to get involved in a way that works for you. It includes documentation, teaching, writing code, making art, writing, design, activism, organizing, curating, or anything else you might imagine. Our [contribute page](https://p5js.org/contribute/) gives an overview of different ways to get involved and contribute. -This project follows the [all-contributors](https://github.com/kentcdodds/all-contributors) specification. We use the @all-contributors bot to handle adding people to the README.md file. You can ask @all-contributors bot to add you in an issue or PR comment like so: +p5.js project follows the [all-contributors](https://github.com/kentcdodds/all-contributors) specification. We use the @all-contributors bot to handle adding people to the README.md file. You can ask @all-contributors bot to add you in an issue or PR comment like so: ``` @all-contributors please add @[your GitHub handle] for [your contribution type] ``` -You can find relevant contribution type [here](https://allcontributors.org/docs/en/emoji-key). Although we will usually automatically add you to the contributor list using the bot after merging your PR. The contributor docs are published on p5.js [website](https://p5js.org/contributor-docs/#/), and hosted on p5.js [GitHub repository](https://github.com/processing/p5.js/tree/main/contributor_docs). +You can find relevant contribution type [here](https://allcontributors.org/docs/en/emoji-key). Although we will usually automatically add you to the contributor list using the bot after merging your PR. The contributor docs are published on p5.js [website](https://p5js.org/contribute/), and hosted on p5.js [GitHub repository](https://github.com/processing/p5.js/tree/main/contributor_docs). # Before Contributing Contributing to p5.js should be a stress free experience and we welcome contributions of all levels, whether you are just fixing a small typo in the documentation or refactoring complex 3D rendering functionalities. However there are just a few things you should be familiar with before starting your contribution. -First, please have a read through our [community statement](https://p5js.org/community/). +First, please have a read through our [community statement](https://p5js.org/about/#community-statement). Next, we are currently prioritizing work that expands access (inclusion and accessibility) to p5.js! See [our access statement](./access.md) for more details. # Get Started Now you are ready to start contributing to p5.js! There are many ways to get started with contributing to p5.js and many reasons to do so. For the purpose of this documentation, we will split contributions roughly into two categories. -- Contributions that directly deals with the source code (including documentation) -- Contributions that directly deals with the source code very little or not at all +- Source code contribution (including documentation) +- Non-source code contribution Depending on what kind of contribution you are making to p5.js, please read on to the relevant section of this documentation. @@ -36,10 +36,17 @@ Head over to [this link](./contributor_guidelines.md) where you will be guided o Most of the time we will stick with this workflow quite strictly and, especially if you have contributed to other projects before, it may feel like there are too many hoops to jump through for what may be a simple contribution. However, the steps above are aimed to make it easy for you as a contributor and for stewards/maintainers to contribute meaningfully, while also making sure that you won't be spending time working on things that may not be accepted for various reasons. The steps above will help ensure that any proposals or fixes are adequately discussed and considered before any work begin, and often this will actually save you (and the steward/maintainer) time because the PR that would need additional fixing after review, or outright not accepted, would happen less often as a result. -**We see contributing to p5.js as a learning opportunity** and we don't measure sucess by only looking at the volume of contributions we received. There is no time limit on how long it takes you to complete a contribution, so take your time and work at your own pace (we may check in after a long period of inactivity). Ask for help from any of the stewards or maintainers if you need them and we'll try our best to support you. +**We see contributing to p5.js as a learning opportunity** and we don't measure sucess by only looking at the volume of contributions we received. There is no time limit on how long it takes you to complete a contribution, so take your time and work at your own pace (we may check in after a long period of inactivity). Ask for help from any of the stewards or maintainers if you need them and we'll try our best to support you. For information related to area stewards or general maintenance of p5.js GitHub repository, please check out the [steward guidelines](./steward_guidelines.md). ## Non-source code contribution -There are many more ways to contribute to p5.js through non-source code contribution than can be exhaustively listed here, some of the ways may also involve working with some of the p5.js repositories (such as adding examples, writing tutorials for the website, etc.). Depending on what the planned contribution is, we may be able to support you in different ways so do reach out to us via any channel available to you (email, social media, [Discourse forum](https://discourse.processing.org/c/p5js/10), Discord, etc). +There are many more ways to contribute to p5.js through non-source code contribution than can be exhaustively listed here. Some of the ways may also involve working with some of the p5.js repositories (such as adding examples, writing tutorials for the website, etc.). Depending on what the planned contribution is, we may be able to support you in different ways so do reach out to us via any channel available to you (email, social media, [Discourse forum](https://discourse.processing.org/c/p5js/10), Discord, etc). Here are just some ways you can contribute: -## [Stewards and maintainers](./steward_guidelines.md) -For information related to area stewards or general maintenance of p5.js GitHub repository, please check out the [steward guidelines](./steward_guidelines.md). +**Create.** Inspire others with your sketches. p5.js is looking for designers, artists, coders, and programmers to showcase their creative, amazing work on the community sketch gallery. Don’t forget to tag @p5xjs on [Instagram](https://www.instagram.com/p5xjs/) and [X](https://twitter.com/p5xjs/), and we will do our best to share what you're doing. + +**Teach.** Teach a workshop, a class, a friend, or a collaborator! Share a syllabus, video tutorials, or other teaching materials with the community. + +**Organize.** Host p5.js events. Curate a p5.js exhibition. Activate your local p5.js community. + +**Donate.** p5.js is an open-source project made for and by artists, supported by a dedicated community of volunteers. It is and will always remain free to all, without restrictions. If p5.js has made an impact in your life, and you're in a position to give back, please consider making a donation to the Processing Foundation. Your donations directly fund the development of new features, better community support, improved documentation, and more. Thank you for your support. + +p5.js is designed to be inclusive and welcomes contributions from everyone, regardless of their background, resources, or level of experience. If you thought of another way you'd like to contribute that you don’t see here, [let us know](mailto:hello@p5js.org)! Your participation is important and contributes to the lively community that is p5.js. diff --git a/contributor_docs/access.md b/contributor_docs/access.md index 7d1e951561..7fcac44946 100644 --- a/contributor_docs/access.md +++ b/contributor_docs/access.md @@ -2,7 +2,7 @@ # Our Focus on Access -At the [2019 Contributors Conference](https://p5js.org/community/contributors-conference-2019.html), p5.js made the commitment to only add new features that increase access (inclusion and accessibility). We will not accept feature requests that don't support these efforts. We commit to the work of acknowledging, dismantling, and preventing barriers. This means considering intersecting[^1] experiences of diversity that can impact access and participation. These include alignments of gender, race, ethnicity, sexuality, language, location, et cetera. We center the needs of marginalized groups over the continued comfort of those privileged within the p5.js community. We are collectively exploring the meaning of access. We are learning how to practice and teach access. We choose to think of access through expansive, intersectional, and coalitionary frameworks. This commitment is part of the core values of p5.js outlined in our [Community Statement](https://p5js.org/community/). +At the [2019 Contributors Conference](https://p5js.org/events/contributors-conference-2019), p5.js made the commitment to only add new features that increase access (inclusion and accessibility). We will not accept feature requests that don't support these efforts. We commit to the work of acknowledging, dismantling, and preventing barriers. This means considering intersecting[^1] experiences of diversity that can impact access and participation. These include alignments of gender, race, ethnicity, sexuality, language, location, et cetera. We center the needs of marginalized groups over the continued comfort of those privileged within the p5.js community. We are collectively exploring the meaning of access. We are learning how to practice and teach access. We choose to think of access through expansive, intersectional, and coalitionary frameworks. This commitment is part of the core values of p5.js outlined in our [Community Statement](https://p5js.org/about/#community-statement). ## Kinds of access @@ -33,9 +33,9 @@ These are examples of efforts we believe increase access: - Translating documentation and other materials into more languages, decentering linguistic imperialism[^4] (e.g., Rolando Vargas’ [Processing in Kuna Language](https://medium.com/@ProcessingOrg/culture-as-translation-processing-in-kuna-language-with-rolando-vargas-and-edinson-izquierdo-8079f14851f7), Felipe Santos Gomes, Julia Brasil, Katherine Finn Zander, and Marcela Mancino’s [Pê Cinco: Internationalization and Popularization for Portuguese Speakers](https://medium.com/processing-foundation/translating-p5-js-into-portuguese-for-the-brazilian-community-14b969e77ab1)) - Improving our support for assistive technologies, such as screen readers (e.g., Katie Liu’s [Adding Alt Text in p5.js](https://medium.com/processing-foundation/adding-alt-text-e2c7684e44f8), Claire Kearney-Volpe’s [P5 Accessibility Project](https://medium.com/processing-foundation/p5-accessibility-115d84535fa8)) - Following [Web Content Accessibility Guidelines](https://www.w3.org/TR/WCAG21/) in our tools and working towards making it easier for users to follow them in their projects -- Making p5.js error messages more helpful and supportive to people using the tool (e.g., the [p5.js Friendly Error System (FES)](https://github.com/processing/p5.js/blob/main/contributor_docs/friendly_error_system.md)) +- Making p5.js error messages more helpful and supportive to people using the tool (e.g., the [p5.js Friendly Error System (FES)](./friendly_error_system.md)) - Mentoring and supporting learners of p5.js within communities that are historically excluded from and marginalized in creative coding and the digital arts -- Hosting community events (e.g., [p5.js Access Day 2022](https://p5js.org/community/p5js-access-day-2022.html), [The Web We Want: p5.js x W3C TPAC 2020)](https://medium.com/processing-foundation/p5-js-x-w3c-tpac-bee4c621a053) with access-centered organizing tactics (e.g., ASL interpretation, live captioning, accessible venues) +- Hosting community events (e.g., [p5.js Access Day 2022](https://p5js.org/events/p5js-access-day-2022), [The Web We Want: p5.js x W3C TPAC 2020)](https://medium.com/processing-foundation/p5-js-x-w3c-tpac-bee4c621a053) with access-centered organizing tactics (e.g., ASL interpretation, live captioning, accessible venues) - Supporting the creation of educational resources (e.g., Adekemi Sijuwade-Ukadike’s [A11y Syllabus](http://a11ysyllabus.site/)) - Publishing documentation and reports of our work that follow WCAG guidelines, use plain language, and focus on beginners from diverse experiences (e.g., [OSACC p5.js Access Report](https://github.com/processing/OSACC-p5.js-Access-Report)) @@ -54,5 +54,5 @@ This version of the p5.js Access Statement was revised in collaboration with Eve [^1]: Crenshaw, Kimberlé (1989). "Demarginalizing the intersection of race and sex: a black feminist critique of antidiscrimination doctrine, feminist theory and antiracist politics". University of Chicago Legal Forum. 1989 (1): 139–167. ISSN 0892-5593. Full text at Archive.org. [^2]: Capital ‘D’ Deaf refers to people who are culturally Deaf or part of the Deaf community while lower case ‘d’ deaf is an audiological term that can describe people not associated with Deaf identity. -[^3]: There are differing preferences between ‘person-first’ vs. ‘identity-first’ language within the disability community. Read [Unpacking the debate over person-first vs. identity-first language in the autism community](https://news.northeastern.edu/2018/07/12/unpacking-the-debate-over-person-first-vs-identity-first-language-in-the-autism-community/) and [I am Disabled: On Identity-First Versus People-First Language](https://thebodyisnotanapology.com/magazine/i-am-disabled-on-identity-first-versus-people-first-language/). +[^3]: There are differing preferences between ‘person-first’ vs. ‘identity-first’ language within the disability community. Read [Unpacking the debate over person-first vs. identity-first language in the autism community](https://news.northeastern.edu/2018/07/12/unpacking-the-debate-over-person-first-vs-identity-first-language-in-the-autism-community/), [Disability-Affirming Language: Person-First versus Identity-First Language](https://editorstorontoblog.com/2024/02/23/disability-affirming-language-person-first-versus-identity-first-language/), and [Person-First and Identity-First Language Glossary](https://ogs.ny.gov/system/files/documents/2024/02/person-first-and-identity-first-glossary_english_final.pdf). [^4]: Linguistic Imperialism, or Language Imperialism, refers to the ongoing domination/prioritization/imposition of certain languages such as English at the expense of native languages due to imperial expansion and globalization. diff --git a/contributor_docs/contributing_to_the_p5.js_reference.md b/contributor_docs/contributing_to_the_p5js_reference.md similarity index 95% rename from contributor_docs/contributing_to_the_p5.js_reference.md rename to contributor_docs/contributing_to_the_p5js_reference.md index 09ee8015f5..849bfef6bf 100644 --- a/contributor_docs/contributing_to_the_p5.js_reference.md +++ b/contributor_docs/contributing_to_the_p5js_reference.md @@ -73,7 +73,7 @@ Anything in a block in this manner will be interpreted as reference documentatio ## Reference comments block -Let’s break down the reference comments block above for the `sin()` function and see what each section does. You can compare what you see in the comments here and what you can see on the reference page for [`sin()`](https://p5js.org/reference/#/p5/sin). +Let’s break down the reference comments block above for the `sin()` function and see what each section does. You can compare what you see in the comments here and what you can see on the reference page for [`sin()`](https://p5js.org/reference/p5/sin/). ``` /** @@ -143,7 +143,7 @@ If the method returns the parent object, you can skip the `@return` tag and add ## Additional signatures -If a function has multiple possible parameter options, you can specify each individually. For example, the [`background()`](http://p5js.org/reference/#p5/background) function takes a number of different parameter options (see "Syntax" section on the reference page). Choose one version to list as the first signature using the template above. At the end of the first reference comment block, you can add additional signatures, each in its own block, using only the `@method` and `@param` tags following the example below. +If a function has multiple possible parameter options, you can specify each individually. For example, the [`background()`](https://p5js.org/reference/p5/background/) function takes a number of different parameter options (see "Syntax" section on the reference page). Choose one version to list as the first signature using the template above. At the end of the first reference comment block, you can add additional signatures, each in its own block, using only the `@method` and `@param` tags following the example below. ``` /** @@ -270,7 +270,7 @@ If you do not want the example to be run as part of the automated tests (for exa * ``` -If your example uses external asset files, put them in the [/docs/yuidoc-p5-theme/assets](https://github.com/processing/p5.js/tree/main/docs/yuidoc-p5-theme/assets) folder (or reuse one already in there) then link to them with "assets/filename.ext" in the code. See the [tint()](http://p5js.org/reference/#/p5/tint) reference for example. +If your example uses external asset files, put them in the [/docs/yuidoc-p5-theme/assets](https://github.com/processing/p5.js/tree/main/docs/yuidoc-p5-theme/assets) folder (or reuse one already in there) then link to them with "assets/filename.ext" in the code. See the [tint()](https://p5js.org/reference/p5/tint/) reference for example. ### Add a canvas description using `describe()` @@ -308,7 +308,7 @@ Finally, for every example you add, you are required to use the p5.js function ` * ``` -For more on `describe()` visit the [web accessibility contributor documentation](https://p5js.org/contributor-docs/#/web_accessibility?id=user-generated-accessible-canvas-descriptions). +For more on `describe()` visit the [web accessibility contributor documentation](./web_accessibility/#describe). With all the above you should have most of the tools needed to write and edit p5.js reference comments. However, there are a few more specialized usage of JSDoc style reference comments that you may come across in p5.js. These are situationally useful and not something that you need often. @@ -412,5 +412,5 @@ This will launch a live preview of the rendered reference that will update each For additional details about the reference system, you can checkout the documentation for [JSDoc](https://jsdoc.app/) and [YUIDoc](https://yui.github.io/yuidoc/). -For examples of issues related to the reference, have a look at [#6519](https://github.com/processing/p5.js/issues/6519) and [#6045](https://github.com/processing/p5.js/issues/6045). The [contributor guidelines](https://github.com/processing/p5.js/blob/main/contributor_docs/contributor_guidelines.md) document is also a good place to start. +For examples of issues related to the reference, have a look at [#6519](https://github.com/processing/p5.js/issues/6519) and [#6045](https://github.com/processing/p5.js/issues/6045). The [contributor guidelines](./contributor_guidelines.md) document is also a good place to start. diff --git a/contributor_docs/contributor_guidelines.md b/contributor_docs/contributor_guidelines.md index 505872fda8..a75a4101f4 100644 --- a/contributor_docs/contributor_guidelines.md +++ b/contributor_docs/contributor_guidelines.md @@ -4,7 +4,7 @@ Welcome to the contributor guidelines! This document is for new contributors looking to contribute code to p5.js, contributors looking to refresh their memories on some technical steps, or just about anything else to do with code contributions to p5.js. -If you are looking to contribute outside of the p5.js repositories (writing tutorials, planning classes, organizing events), please have a look at the other relevant pages instead. Stewards or maintainers may find the [steward guidelines](https://github.com/processing/p5.js/blob/main/contributor_docs/steward_guidelines.md) more helpful regarding reviewing issues and pull requests. +If you are looking to contribute outside of the p5.js repositories (writing tutorials, planning classes, organizing events), please have a look at the other relevant pages instead. Stewards or maintainers may find the [steward guidelines](./steward_guidelines.md) more helpful regarding reviewing issues and pull requests. This is a relatively long and comprehensive document but we will try to signpost all steps and points as clearly as possible. Do utilize the table of contents to find sections relevant to you. Feel free to skip sections if they are not relevant to your planned contributions. @@ -32,7 +32,6 @@ This is a relatively long and comprehensive document but we will try to signpost - [Source code](#source-code) - [Unit tests](#unit-tests) - [Inline documentation](#inline-documentation) - - [Internationalization](https://github.com/processing/p5.js/blob/main/contributor_docs/contributor_guidelines.md#internationalization) - [Accessibility](#accessibility) - [Code standard](#code-standard) - [Software Design principles](#software-design-principles) @@ -85,7 +84,7 @@ When you encounter possible incorrect behavior in p5.js or something not behavin There are a few fields for you to fill in for this template: -1. *Most appropriate sub-area of p5.js?* - This helps us identify and respond to your issue by automatically tagging the issue with the relevant [labels](https://github.com/processing/p5.js/blob/main/contributor_docs/issue_labels.md). +1. *Most appropriate sub-area of p5.js?* - This helps us identify and respond to your issue by automatically tagging the issue with the relevant [labels](https://github.com/processing/p5.js/labels). 2. *p5.js version* - You can find the p5.js version number in either the `