/TSC

The Node.js Technical Steering Committee

Primary LanguageJavaScript

Node.js Technical Steering Committee

The Node.js Technical Steering Committee (TSC) is the technical governing body of Node.js. It is described in the TSC Charter.

TSC scope

The TSC is responsible for the Node.js Core project, some projects depended upon by Node.js Core, and several projects adjacent to Node.js Core.

The TSC exercises autonomy in managing its responsibilities and seeks agreement from the OpenJS Foundation Board on any change to the scope of those responsibilities as defined below.

Node.js Core

Node.js Core is defined as the contents of the repository located at https://github.com/nodejs/node from which the node executable and associated packages are built, excluding the vendored projects included in the codebase located in the deps and tools directories that are copied in from externally maintained repositories.

Dependent projects

Additional projects fall within the TSC's scope of responsibility which are dependencies of Node.js Core in that they are required to plan, test, build, document, and ship Node.js releases.

These projects are located in the following repositories:

Adjacent projects

The TSC is responsible for several projects that are not strictly required to plan, test, build, document, and ship Node.js releases. Adjacent projects are either created from within the technical organization managed by the TSC or are adopted into that organization from outside.

In the case of adopting existing projects, once the TSC has decided that adoption is appropriate, it should seek agreement from the OpenJS Foundation Board for such adoption as it impacts the scope of technical activities of the Foundation.

Current adjacent projects that are within the TSC's scope of responsibility include:

List of TSC responsibilities

The TSC exercises autonomy in setting up and maintaining procedures, policies, and management and administrative structures as it deems appropriate for the maintenance and operation of these projects and resources.

Included in the responsibilities of the TSC are:

  • Managing code and documentation creation and changes for the listed projects and resources
  • Setting and maintaining standards covering contributions of code, documentation, and other materials
  • Managing code and binary releases: types, schedules, frequency, delivery mechanisms
  • Making decisions regarding dependencies of the Node.js Core project, including what those dependencies are and how they are bundled with source code and releases
  • Creating new repositories and projects under the nodejs GitHub organization as required
  • Setting overall technical direction for the Node.js Core project, including high-level goals and low-level specifics regarding features and functionality
  • Setting and maintaining appropriate standards for community discourse via the various mediums under TSC control
  • Setting and maintaining governance rules for the conduct and make-up of the TSC, Working Groups and other bodies within the TSC's domain

Many of these responsibilities will be delegated by the TSC to appropriate bodies such as the Working Groups.

TSC members

TSC members are responsible for top-level technical community concerns. The role is mostly administrative and is responsible for admitting new Working Groups and advocating for any needs in the technical side of the project to the OpenJS Foundation Board of Directors.

TSC members can nominate new members at any time. Candidates for membership tend to be people who have a competency for community management and a high tolerance and patience for process minutiae as the TSC delegates most of its responsibilities to other working groups.

A current list of TSC members is maintained in the main Node.js repository.

YouTube

Many teams/groups post meeting videos to the Node.js YouTube channel.

Any GitHub team maintainer is allowed Manager access to the Google Plus account allowing them to add/manage video content and schedule events (live broadcasts).

Members of the TSC are allowed Owner access to the Google Plus account. This role can do all Manager activities and add/remove other members from the Google Plus account.

To request access, open an issue.

Strategic initiatives

Working Groups

Policy change proposal process

The Node.js TSC is chartered to oversee the technical governance of all Working Groups under Node.js. Working Groups have broad powers of self-governance.

To propose a change or addition to policies or processes that are intended to cover all Working Groups, a PR should be opened in the nodejs/TSC repository.

The pull request can be labeled tsc-agenda to request that it be put on the agenda for the next TSC meeting.

The OpenJS Foundation Board of Directors retains certain rights (especially legal considerations). If the TSC endorses a proposal, they will escalate to the OpenJS Foundation Board of Directors when required to do so.

In some cases, existing individual groups have the right to refuse changes to their charters. The TSC can not mandate existing working groups alter their charters. If such a situation arises, the TSC may decide to revoke the group's charter.