The Community Committee is a top-level committee in the Node.js Foundation focused on community-facing efforts.
For more details read the Community Committee Charter, adopted by the Node.js Foundation Board of Directors on March 10th 2017.
The Community Committee reflects a formal role and the relevance of the voice of community in the governance of the Node.js project. The formation of this group as a committee alongside the Technical Steering Committee (TSC) demonstrates that community-focused contributions are valued by the contributors of Node.js, and that roles other than those of code contributor help foster a healthy, sustainable open source community.
The Community Committee works to empower people in every part of the project. By making the Node.js project more diverse and improving the environment for inclusivity, we attract a wider range of views, voices, and opinions, which in turn helps us ship better software.
For that reason, we advocate for the usage of a Code of Conduct. We've also learned that our goals are not easily accomplished with that alone. Community Committee initiatives and the related working groups are formed with the intent of improving the cultural development and outreach within the Node.js Foundation, and are therefore suited to engaging people with non-coding skill sets to contribute as well.
code commits !== the only means to contributions.
The Community Committee is tasked with growing and sustaining the Node.js Community. If you're reading this, you're already a part of that community and we'd love to have your help!
Before you get started, here's a broad outline of the Community Committee's governance structure:
- Community Committee (meta-level concerns, cross-cutting with other teams)
- Initiatives (focused on specific tasks, independent from the Community Committee). For example, the Website Redesign Initiative, which is focused on a complete redesign of the https://nodejs.org website
- Working Groups (like initiatives, but more autonomous and broad in scope)
As seen here, most of the community work that immediately affects the project is done within the numerous initiatives. We recommend checking the list of initiatives below and getting involved with one that you find interesting! If nothing suits your fancy and you have concrete ideas, open an issue here! We can help to point you in the right direction.
To get started with contributing, you should read the Contributing Guidelines
document. This document details the roles you can take on. It also includes a guide
to contributing and links to good first issue
s where we're looking for help.
If you're interested in participating in the Community Committee directly, you should create an issue asking to be a Guest in our next Community Committee meeting. You can find a great example of such an issue here!
Community Committee meetings are broadcast via Zoom. The join link is published just before the meeting begins in the meeting issue. Meeting times are coordinated to optimize for contributor timezones.
Current meeting cadence is every other week on Thursdays. Please check the Node.js Foundation calendar for next scheduled meeting. Also, the issues section of this repo will include a CommComm meeting issue, some time before it begins.
We stream our conference call straight to YouTube so anyone can listen to it live, it should start playing at https://www.youtube.com/c/nodejs+foundation/live when we turn it on. There's usually a short cat-herding time at the start of the meeting and then occasionally we have some quick private business to attend to before we can start recording & streaming. Please be patient, and it should show up.
Initiatives are projects that the Community Committee and the broader community members are collaborating on to enable Node.js across the ecosystem.
At any one time the Node.js project has a number of strategic initiatives underway. With the less-tangible approach to the work that the Community Committee does, having a way to track this work is important.
For each strategic initiative, the Community Committee's goal is to have a single point of reference - a champion - that understands what's happening with the initiative to the fullest extent possible, and can report on the initiative as needed.
A review of the initiatives will be a standing item on the Community Committee agenda (even if the update is 'nothing new') as a way to ensure they are active and have the support needed.
Initiative | Champion(s) | Link |
---|---|---|
i18n | obensource | nodejs/i18n |
Mentorship | Bamieh and dshaw | nodejs/mentorship |
Node.js Collection | bnb | nodejs/nodejs-collection |
Outreach | AhmadAwais | nodejs/outreach |
User Feedback | dshaw | nodejs/user-feedback |
Website Redesign | amiller-gh and keywordnew | nodejs/website-redesign |
Initiative | Previous Champion | Links |
---|---|---|
NodeTogether | rachelnicole | nodejs#63 |
Office Hours | bnb | nodejs#157 |
Code + Learn Friendliness | ? | nodejs#158 |
How I Got Into Node | ? | nodejs#138 |
Individual Membership | ? | nodejs#170 |
Node.js People Everywhere | ? | nodejs#184 |
Open-source Friday | ? | nodejs#180 |
This week in Core | ? | nodejs#148 |
Initiative | Champion | Links | Notes |
---|---|---|---|
Education | hackygolucky | nodejs/education | Absorbed by the Website Redesign Initiative |
Evangelism WG | bnb | nodejs/evangelism | Responsibilities absorbed by CommComm |
Community Events | Patrick Heneise | nodejs/community-events | Repository Archived |
Badges | amiller-gh | nodejs/badges | On pause until design is refined in website-redesign. |
In an effort to be more concise and distribute our knowledge, we use labels on issues to give context on thier status. Here's a guide to how we use labels:
initiative-
prefix: Belonging to or about an initiative that follows the prefix.waiting-on-
prefix: This indicates that we're waiting on a group for input/feedback.type-
prefix: Denotes what kind of discussion is happening – a request, an open discussion, a problem, etc.-agenda
suffix: Denotes that an issue will be included in the agenda of the initiative or WG pririor to the suffix.good-first-issue
: Issues that are a good place to start contributing to the Node.js Community Committeementor-available
: Issues that have a mentor available to help out
The Community Committee is an autonomous committee that collaborates alongside the TSC and whose governance is strongly influenced by the TSC's example. See GOVERNANCE.md to learn more about the group's evolving structure and CONTRIBUTING.md for guidance about the expectations for all contributors to this project.
- amiller-gh - Adam Miller <ammiller@linkedin.com> Community Committee Chair
- AhmadAwais – Ahmad Awais <me@AhmadAwais.com>
- bamieh - Ahmad Bamieh <ahmadbamieh@gmail.com>
- bnb - Tierney Cyren <hello@bnb.im>
- keywordnew - Manil Chowdhury <manil.chowdhury@gmail.com>
- codeekage - Agiri Abraham Jr. <agiriabrahamjunior@nodejs.africa>
- dshaw - Dan Shaw <dshaw@dshaw.com>
- hackygolucky - Tracy Hinds <tracyhinds@gmail.com> Community Committee Director
- joesepi - Joe Sepi <joesepi@gmail.com>
- mhdawson - Michael Dawson <michael_dawson@ca.ibm.com>
- obensource - Ben Michel <benpmichel@gmail.com>
- waleedashraf - Waleed Ashraf <waleedashrafhere@gmail.com>
- williamkapke - William Kapke <will@kap.co> Individual Membership Director
Individual Membership Directors represent individual members of the foundation. They represent both the Individual Membership and Community Committee on the Node.js Board of Directors.
- williamkapke - William Kapke <will@kap.co>
- ashleygwilliams - Ashley Williams <ashley666ashley@gmail.com>
- MylesBorins - Myles Borins <myles.borins@gmail.com>
- jpwesselink - JP Wesselink <jpwesselink@gmail.com>
- oe - Olivia Hugger <olivia@fastmail.com>
- gr2m - Gregor Martynus <nodejs.commcomm@martynus.net>
- amorelandra - Emily Rose <nexxy@symphonysubconscious.com>
- msmichellegar - Michelle Garrett <msmichellegar@gmail.com>
- rachelnicole - Rachel White <loveless@gmail.com>
- refack - Refael Ackermann <refack@gmail.com>
- JemBijoux - Jem Bezooyen <jem@hipmedia.ca> Community Committee Secretary
- Tiriel - Benjamin Zaslavsky <benjamin.zaslavsky@gmail.com>