Skip to content

Commit 16c7670

Browse files
authored
Merge pull request #7867 from ksen0/stewards
Update stewardship guildelines and process
2 parents 146f48a + fda190f commit 16c7670

File tree

7 files changed

+271
-28
lines changed

7 files changed

+271
-28
lines changed

.github/ISSUE_TEMPLATE/2-found-a-bug.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,11 @@ body:
1919
- label: Math
2020
- label: Typography
2121
- label: Utilities
22+
- label: p5.strands
2223
- label: WebGL
23-
- label: Build process
24-
- label: Unit testing
25-
- label: Internationalization
26-
- label: Friendly errors
24+
- label: DevOps, Build process, Unit testing
25+
- label: Internationalization (i18n)
26+
- label: Friendly Errors
2727
- label: Other (specify if possible)
2828
- type: input
2929
attributes:

.github/labeler.yml

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,17 @@
2222
- '\[[xX]\]\s*Utilities'
2323
"Area:WebGL":
2424
- '\[[xX]\]\s*WebGL'
25+
"Internationalization":
26+
- '\[[xX]\]\s*Internationalization'
27+
"DevOps":
28+
- '\[[xX]\]\s*Build Process'
29+
"DevOps":
30+
- '\[[xX]\]\s*Unit Testing'
2531
"Build Process":
2632
- '\[[xX]\]\s*Build Process'
2733
"Unit Testing":
2834
- '\[[xX]\]\s*Unit Testing'
29-
"Internationalization":
30-
- '\[[xX]\]\s*Internationalization'
3135
"Friendly Errors":
3236
- '\[[xX]\]\s*Friendly Errors'
37+
"p5.strands":
38+
- '\[[xX]\]\s*p5.strands'

.github/workflows/stewards-update.yml

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
name: Update Steward Table in README
2+
3+
on:
4+
push:
5+
branches: [main]
6+
paths:
7+
- stewards.yml
8+
9+
jobs:
10+
build:
11+
runs-on: ubuntu-latest
12+
steps:
13+
- uses: actions/checkout@v3
14+
15+
- name: Setup Node
16+
uses: actions/setup-node@v4
17+
with:
18+
node-version: '20'
19+
20+
- name: Install dependencies
21+
run: npm install js-yaml
22+
23+
- name: Run table generator
24+
run: node utils/stewards-table.js
25+
26+
- name: Create Pull Request
27+
uses: peter-evans/create-pull-request@v5
28+
with:
29+
commit-message: "Update README table from stewards.yml"
30+
branch: update-readme-table
31+
title: 'chore: update README table from stewards.yml'
32+
body: 'This PR updates the README.md table to refelct changes in stewards.yml.'
33+
add: README.md

README.md

Lines changed: 23 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -86,27 +86,29 @@ Lead/Mentor Alumni
8686
* [@qianqianye](https://github.com/qianqianye) - p5.js Lead,2021-present (on leave)
8787
* [@outofambit](https://github.com/outofambit) - p5.js Co-Lead 2021-22, Mentor 2022-2023
8888
* [@mcturner1995](https://github.com/mcturner1995) - p5.js Lead 2020
89-
90-
| Area | Steward(s) |
91-
| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ |
92-
| Overall | [@ksen0](https://github.com/ksen0) |
93-
| [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)|
94-
| [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) |
95-
| [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) |
96-
| [Data](https://github.com/processing/p5.js/tree/main/src/data) | [@angelabelle](https://github.com/angelabelle), [@shahankhatch](https://github.com/shahankhatch), [@TanviKumar](https://github.com/TanviKumar), [@SkylerW99](https://github.com/SkylerW99), [@nhasalajoshi](https://github.com/nhasalajoshi) |
97-
| [DOM](https://github.com/processing/p5.js/tree/main/src/dom) | [@SarveshLimaye](https://github.com/SarveshLimaye), [@SoundaryaKoutharapu](https://github.com/SoundaryaKoutharapu), [@ramya202000](https://github.com/ramya202000), [@BamaCharanChhandogi](https://github.com/BamaCharanChhandogi), [@Obi-Engine10](https://github.com/Obi-Engine10), [@MarceloGoncalves](https://github.com/MarceloGoncalves), [@hiddenenigma](https://github.com/hiddenenigma) |
98-
| [Events](https://github.com/processing/p5.js/tree/main/src/events) | [@limzykenneth](https://github.com/limzykenneth), [@richardegil](https://github.com/richardegil), [@angelabelle](https://github.com/angelabelle), [@littlejacinthe](https://github.com/littlejacinthe), [@TanviKumar](https://github.com/TanviKumar), [@tuminzee](https://github.com/tuminzee) |
99-
| [Image](https://github.com/processing/p5.js/tree/main/src/image) | [@cgusb](https://github.com/cgusb), [@albertomancia](https://github.com/albertomancia), [@ramya202000](https://github.com/ramya202000), [@hannahvy](https://github.com/hannahvy), [@robin-haxx](https://github.com/robin-haxx)|
100-
| [IO](https://github.com/processing/p5.js/tree/main/src/io) | [@limzykenneth](https://github.com/limzykenneth), [@Pritam1136](https://github.com/Pritam1136), [@shahankhatch](https://github.com/shahankhatch), [@TanviKumar](https://github.com/TanviKumar), [@jeanetteandrews](https://github.com/jeanetteandrews)|
101-
| [Math](https://github.com/processing/p5.js/tree/main/src/math) | [@limzykenneth](https://github.com/limzykenneth), [@ericnlchen](https://github.com/ericnlchen), [@ChihYungChang](https://github.com/ChihYungChang), [@bsubbaraman](https://github.com/bsubbaraman), [@albertomancia](https://github.com/albertomancia), [@JazerUCSB](https://github.com/JazerUCSB), [@tedkmburu](https://github.com/tedkmburu), [@perminder-17](https://github.com/perminder-17), [@Obi-Engine10](https://github.com/Obi-Engine10), [@jeanetteandrews](https://github.com/jeanetteandrews) |
102-
| [Typography](https://github.com/processing/p5.js/tree/main/src/typography) | [@dhowe](https://github.com/dhowe), [@paulaxisabel](https://github.com/paulaxisabel), [@SarveshLimaye](https://github.com/SarveshLimaye), [@SkylerW99](https://github.com/SkylerW99), [@BamaCharanChhandogi](https://github.com/BamaCharanChhandogi), [@Obi-Engine10](https://github.com/Obi-Engine10), [@hannahvy](https://github.com/hannahvy), [@singshris](https://github.com/singshris), [@hiddenenigma](https://github.com/hiddenenigma) |
103-
| [Utilities](https://github.com/processing/p5.js/tree/main/src/utilities) | [@limzykenneth](https://github.com/limzykenneth), [@glopzel](https://github.com/glopzel) |
104-
| [WebGL](https://github.com/processing/p5.js/tree/main/src/webgl) | [@davepagurek](https://github.com/davepagurek), [@aferriss](https://github.com/aferriss), [@aceslowman](https://github.com/aceslowman), [@ShenpaiSharma](https://github.com/ShenpaiSharma), [@ChihYungChang](https://github.com/ChihYungChang), [@teragramgius](https://github.com/teragramgius), [@JazerUCSB](https://github.com/JazerUCSB), [@richardegil](https://github.com/richardegil), [@itsjoopark](https://github.com/itsjoopark), [@Gaurav-1306](https://github.com/Gaurav-1306), [@jeanetteandrews](https://github.com/jeanetteandrews) |
105-
| [Internalization](https://github.com/processing/p5.js/blob/main/src/core/internationalization.js) | [@limzykenneth](https://github.com/limzykenneth) |
106-
| [Friendly Errors](https://github.com/processing/p5.js/tree/main/src/core/friendly_errors) | [@richardegil](https://github.com/richardegil), [@itsjoopark](https://github.com/itsjoopark), [@hannahvy](https://github.com/hannahvy), [@bisabi-01](https://github.com/bisabi-01), [@singshris](https://github.com/singshris) |
107-
| [Contributor Docs](https://github.com/processing/p5.js/tree/main/contributor_docs) |[@limzykenneth](https://github.com/limzykenneth), [@asukaminato0721](https://github.com/asukaminato0721), [@SoundaryaKoutharapu](https://github.com/SoundaryaKoutharapu), [@richardegil](https://github.com/richardegil), [@hannahvy](https://github.com/hannahvy), [@bayomayo](https://github.com/bayomayo) |
108-
| [p5.sound](https://github.com/processing/p5.sound.js) |[@miguellacorte](https://github.com/miguellacorte), [@JazerUCSB](https://github.com/JazerUCSB), [@angelabelle](https://github.com/angelabelle), [@littlejacinthe](https://github.com/littlejacinthe), [@hannahvy](https://github.com/hannahvy), [@glopzel](https://github.com/glopzel), [@singshris](https://github.com/singshris), [@jeanetteandrews](https://github.com/jeanetteandrews) |
109-
| Build Process/Unit Testing | [@limzykenneth](https://github.com/limzykenneth) |
89+
90+
91+
<!-- STEWARDS-LIST:START - Do not remove or modify this section -->
92+
| Area | Steward(s) |
93+
|------|-------------|
94+
| Maintainers | [@davepagurek](https://github.com/davepagurek), [@ksen0](https://github.com/ksen0), [@limzykenneth](https://github.com/limzykenneth), [@perminder-17](https://github.com/perminder-17), [@qianqianye](https://github.com/qianqianye) |
95+
| Accessibility | [@calebfoss](https://github.com/calebfoss) |
96+
| Color | [@limzykenneth](https://github.com/limzykenneth) |
97+
| Core | [@davepagurek](https://github.com/davepagurek) |
98+
| DevOps | [@Vaivaswat2244](https://github.com/Vaivaswat2244), [@error-four-o-four](https://github.com/error-four-o-four), [@limzykenneth](https://github.com/limzykenneth), [@lirenjie95](https://github.com/lirenjie95) |
99+
| Documentation | [@VANSH3104](https://github.com/VANSH3104), [@limzykenneth](https://github.com/limzykenneth), [@perminder-17](https://github.com/perminder-17) |
100+
| Friendly Errors | [@IITM-Jay](https://github.com/IITM-Jay) |
101+
| Graphics (p5.strands) | [@lukeplowden](https://github.com/lukeplowden) |
102+
| Graphics (WebGL) | [@aferriss](https://github.com/aferriss), [@davepagurek](https://github.com/davepagurek), [@lukeplowden](https://github.com/lukeplowden), [@perminder-17](https://github.com/perminder-17) |
103+
| i18n (hi) | [@Divyansh013](https://github.com/Divyansh013), [@takshittt](https://github.com/takshittt) |
104+
| i18n (zh) | [@limzykenneth](https://github.com/limzykenneth), [@lirenjie95](https://github.com/lirenjie95) |
105+
| Math | [@GregStanton](https://github.com/GregStanton), [@holomorfo](https://github.com/holomorfo) |
106+
| p5.js-website | [@clairep94](https://github.com/clairep94), [@ksen0](https://github.com/ksen0) |
107+
| p5.sound.js | [@ogbabydiesal](https://github.com/ogbabydiesal) |
108+
| Shapes | [@GregStanton](https://github.com/GregStanton) |
109+
| Typography | [@dhowe](https://github.com/dhowe) |
110+
| WebGL | [@RandomGamingDev](https://github.com/RandomGamingDev) |
111+
<!-- STEWARDS-LIST:END -->
110112

111113
## Contributors
112114

contributor_docs/steward_guidelines.md

Lines changed: 63 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,16 @@
22

33
# Steward Guidelines
44

5-
Whether you have just joined us as a steward, are a seasoned maintainer of p5.js, or are somewhere in between, this guide contains information as well as tips and tricks that will help you effectively contribute to p5.js. Most of what is written here are guidelines unless otherwise stated, which means you can adapt the practices shown here to suit your workflow.
5+
Whether you are new to p5.js contribution, are already active on the p5.js GitHub repositories, or are somewhere in between, you'll find what you need in this guide to p5.js stewardship. If you are not sure what to expect from stewards, or if you are considering how to volunteer or get started as a steward, read on!
66

77

88
## Table of Contents
99

10+
- [Stewardship](#stewardship)
11+
- [Community Care](#community-care)
12+
- [Areas](#areas)
13+
- [Becoming a Steward](#becoming-a-steward)
14+
- [Getting Started with Stewardship](#getting-started-with-stewardship)
1015
- [Issues](#issues)
1116
- [Bug report](#bug-report)
1217
- [Feature request](#feature-request)
@@ -28,6 +33,63 @@ Whether you have just joined us as a steward, are a seasoned maintainer of p5.js
2833

2934
---
3035

36+
## Stewardship
37+
38+
### Community Care
39+
40+
An open source ethos includes [accessibility, education, collaboration, transparency, and agency](https://www.opensourceethos.net/). To live and practice these values while we write code together needs a lot of community care. These are the community care practices that are part of our definition of stewardship:
41+
42+
1. Welcoming new contributors to GitHub through **friendly comments** and helpful **code reviews**
43+
2. Helping to **facilitate feature discussions** and resolve technical disagreements. For example, this means making connections to other past discussion, or offering input from prior relevant experience. Suggesting features or working on them is contribution, rather than stewardship.
44+
3. Participating in releases of the p5.js software through **supporting** bug fixing and feature completion. For example, this means guiding other contributors and reviewing their PRs. Fixing bugs is contribution, rather than stewardship.
45+
46+
The rest of these guidelines provide some tips and tricks that will help you effectively contribute to p5.js, and to helpfully guide others' contributions. Most of what is written here are guidelines unless otherwise stated, which means you can adapt the practices shown here to suit your workflow.
47+
48+
Everyone is invited to help steward the community when they can! We are happy to see contributors welcome new contributors, review others' code, and provide API design feedback. There are also some concrete roles:
49+
50+
1. Contributors are able to make Issues, PRs, Comments, and Code Reviews.
51+
2. Maintainers are also able to merge PRs and admin other parts of the codebase.
52+
53+
Stewards can also be contributors: they can make Issues and PRs as contributors, while they also take on responsibility, when they are stewarding a particular area, to comment on issues and do code reviews, especially when tagged by other contributors to help with discussion and review.
54+
55+
As a contributor, you can check the current stewards in the p5.js repository's README file and tag relevant stewards - but please be mindful of our contributor guidelines, which emphasize patience and mindfulness that most of the technical work on an open-source project is volunteer.
56+
57+
As a steward, we hope that you regularly chime in on code reviews on Issues or PRs that you did not make, if they are in your area and if you are able to provide helpful guidance!
58+
59+
### Areas
60+
61+
There are different areas of work that stewards can be responsible for. These areas match the GitHub Labels in most cases, with a couple of exceptions. Below is the list of areas.
62+
63+
- **Accessibility**: This area specifically refers to digital and web accessibility, including, for example, screen reader support via API like `describe(..)` as well as accessibility support on the reference website
64+
- **Core**: Refers to core p5.js API, including rendering and environment
65+
- **DevOps**: Refers to build process, unit testing, and other aspects of the development experience
66+
- **Documentation**: Includes both reference in the core codebase that is exposed on the website, the contributor docs, and other website content
67+
- i18n (Internationalization / **Translation**): Includes reviewing translations, particularly for `es`, `hi`, `ko`, `zh`
68+
- **Graphics**: Contains subareas of WebGL and [p5.strands](https://beta.p5js.org/tutorials/intro-to-p5-strands/)
69+
- **Color**: Includes Color, ColorMode, accessibility improvements around color usage
70+
- **Typography**: Refers to all topics on handling text and font
71+
- **Math**: Includes both external Math API and internal performance improvements
72+
- **Shapes**: Includes working with custom shapes in both 1.11.x and 2.x versions of p5.js
73+
- **Maintainers**: This group can merge PRs
74+
- **p5.sound.js**: The [new p5.sound.js](https://github.com/processing/p5.sound.js) add-on library
75+
- **p5.js-website**: Non-content aspects of the [reference website](https://p5js.org/) - for example, its structure, automations, technical improvements and so on.
76+
77+
These focus areas may change over time depending on the needs of the project - so if you are going through the process of applying to be a steward, you are welcome to proposals new areas!
78+
79+
### Becoming a Steward
80+
81+
There are two ways to become a steward:
82+
83+
1. _Nomination_ by maintainers or other stewards, such as in conversation over Discord, Discourse, or GitHub.
84+
2. _Application_ by creating a PR to update `stewards.yml` with your GitHub @ and proposed areas. Please keep in mind each area should have 1-3 stewards. We are always looking for **translation stewards**! Once you make your application PR, other maintainers or stewards may ask for additional supporting material, like making a PR related to the areas you're interested in, or participating in some related discussion.
85+
86+
To remain a steward, you must contribute as a steward to at least 1 of the 2 most recent minor releases (e.g., 2.1.0 or 1.11.0 - when the middle number changes). These are not as frequent as patches (e.g., 2.0.3 to 2.0.4 - when the rightmost number changes), and in practice this means that stewards are expected to be active every 4-6 months or so, supporting other contributors through discussion or code review - not necessarily writing code. To step down from stewardship, you can make a PR to remove yourself from `stewards.yml`. You are always welcome to take a pause and reapply in the future!
87+
88+
### Getting Started with Stewardship
89+
90+
1. Keep this guideline handy as a reference - how to help with new issues, bugs, and features. For example, the "Feature request" section includes tips on how to use the the p5.js [access statement](access.md) as a steward.
91+
2. When helping to answer technical questions or review, try to apply the Processing Foundation [guideline on answering questions](https://discourse.processing.org/t/guidelines-answering-questions/2145) - these can be especially helpful for giving constructive technical feedback.
92+
3. Join the [p5.js Discord](https://discord.com/invite/SHQ8dH25r9) - in the `#contribute-to-p5` you're welcome to ask any questions you have about this process - or suggest how it can be improved!
3193

3294
## Issues
3395

stewards.yml

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
aferriss:
2+
- Graphics:
3+
- WebGL
4+
5+
calebfoss:
6+
- Accessibility
7+
8+
davepagurek:
9+
- Core
10+
- Maintainers
11+
- Graphics:
12+
- WebGL
13+
14+
dhowe:
15+
- Typography
16+
17+
qianqianye:
18+
- Maintainers
19+
20+
ogbabydiesal:
21+
- p5.sound.js
22+
23+
limzykenneth:
24+
- Maintainers
25+
- DevOps
26+
- Documentation
27+
- Color
28+
- i18n:
29+
- zh
30+
31+
perminder-17:
32+
- Graphics:
33+
- WebGL
34+
- Documentation
35+
- Maintainers
36+
37+
lukeplowden:
38+
- Graphics:
39+
- WebGL
40+
- p5.strands
41+
42+
ksen0:
43+
- Maintainers
44+
- p5.js-website
45+
46+
Divyansh013:
47+
- i18n:
48+
- hi
49+
50+
GregStanton:
51+
- Math
52+
- Shapes
53+
54+
holomorfo:
55+
- Math
56+
57+
lirenjie95:
58+
- i18n:
59+
- zh
60+
- DevOps
61+
62+
IITM-Jay:
63+
- Friendly Errors
64+
65+
Vaivaswat2244:
66+
- DevOps
67+
68+
RandomGamingDev:
69+
- WebGL
70+
71+
VANSH3104:
72+
- Documentation
73+
74+
error-four-o-four:
75+
- DevOps
76+
77+
takshittt:
78+
- i18n:
79+
- hi
80+
81+
clairep94:
82+
- p5.js-website
83+
84+

0 commit comments

Comments
 (0)