-
-
Notifications
You must be signed in to change notification settings - Fork 139
Umbrella Program #2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 9 commits
0cbba15
74a88e7
b4fef2c
d31cc7e
c4d67e3
2233322
0b5872c
e0b2b53
5a778fd
08a1fd6
73bd949
e1b8352
78f1ccf
1708a26
37841ff
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,69 @@ | ||
| ## Introduction | ||
|
|
||
| Currently the Node.js Foundation directly oversees the development of the core platform and associated working groups. The addition of Top Level Projects will predictably increase the workload on the TSC and so it makes sense to transfer these responsibilities to a Top Level Project concerned solely with the development of the platform. | ||
|
|
||
| ## History & Metrics | ||
|
|
||
| Created by Ryan Dahl, now the largest programming ecosystem in the world. | ||
|
|
||
| ## Scope | ||
|
|
||
| The Core TLP will have sole responsibility and discretion over the node.js project in the following areas: | ||
|
||
|
|
||
| * Setting release dates | ||
| * Release quality standards | ||
| * Technical direction | ||
| * Governance process and practices. | ||
| * Contribution process and practices. | ||
| * Maintaining the list of additional Collaborators. | ||
| * Development process and any coding standards. | ||
| * Mediating technical conflicts between Collaborators and Working Groups. | ||
|
||
| * Node.js build and CI infrastructure. | ||
|
||
|
|
||
| ## Governance | ||
|
|
||
| https://github.com/nodejs/node/blob/master/GOVERNANCE.md | ||
|
|
||
| ## Contributions | ||
|
|
||
| https://github.com/nodejs/node/blob/master/CONTRIBUTING.md | ||
|
|
||
| ## Tools | ||
|
|
||
| * GitHub `nodejs` org. | ||
| * Uberconference & Soundcloud | ||
| * Google Hangouts & Youtube | ||
|
||
|
|
||
| ## IP | ||
|
|
||
| All relevant IP is already managed by the Node.js Foundation. | ||
|
||
|
|
||
| ## TC Members | ||
|
||
|
|
||
| * **Ben Noordhuis** <[email protected]> ([@bnoordhuis](https://github.com/bnoordhuis)) | ||
| * **Bert Belder** <[email protected]> ([@piscisaureus](https://github.com/piscisaureus)) | ||
| * **Fedor Indutny** <[email protected]> ([@indutny](https://github.com/indutny)) | ||
| * **Trevor Norris** <[email protected]> ([@trevnorris](https://github.com/trevnorris)) | ||
| * **Chris Dickinson** <[email protected]> ([@chrisdickinson](https://github.com/chrisdickinson)) | ||
| * **Rod Vagg** <[email protected]> ([@rvagg](https://github.com/rvagg)) | ||
| * **Jeremiah Senkpiel** <[email protected]> ([@fishrock123](https://github.com/fishrock123)) | ||
| * **Colin Ihrig** <[email protected]> ([@cjihrig](https://github.com/cjihrig)) | ||
| * **Alexis Campailla** <[email protected]> ([@orangemocha](https://github.com/orangemocha)) | ||
| * **Julien Gilli** <[email protected]> ([@misterdjules](https://github.com/misterdjules)) | ||
| * **James M Snell** <[email protected]> ([@jasnell](https://github.com/jasnell)) | ||
| * **Shigeki Ohtsu** <[email protected]> ([@shigeki](https://github.com/shigeki)) | ||
| * **Brian White** <[email protected]> ([@mscdex](https://github.com/mscdex)) | ||
|
|
||
| ## Working Groups | ||
|
|
||
| * [Website](https://github.com/nodejs/node/blob/master/WORKING_GROUPS.md#website) | ||
| * [Streams](https://github.com/nodejs/node/blob/master/WORKING_GROUPS.md#streams) | ||
| * [Build](https://github.com/nodejs/node/blob/master/WORKING_GROUPS.md#build) | ||
| * [Tracing](https://github.com/nodejs/node/blob/master/WORKING_GROUPS.md#tracing) | ||
| * [Roadmap](https://github.com/nodejs/node/blob/master/WORKING_GROUPS.md#roadmap) | ||
| * [Docker](https://github.com/nodejs/node/blob/master/WORKING_GROUPS.md#docker) | ||
| * [Addon API](https://github.com/nodejs/node/blob/master/WORKING_GROUPS.md#addon-api) | ||
|
|
||
|
||
| ## Provisional | ||
|
|
||
| The membership is already well under the 1/4 representation limit and the project has been well established for quite a while. It should skip the incubation phase. | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,19 @@ | ||
| ## Introduction | ||
|
|
||
| ## History & Metrics | ||
|
|
||
| ## Scope | ||
|
|
||
| ## Governance | ||
|
|
||
| ## Contributions | ||
|
|
||
| ## Tools | ||
|
|
||
| ## IP | ||
|
|
||
| ## TC Members | ||
|
|
||
| ## Working Groups | ||
|
|
||
| ## Provisional |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,26 @@ | ||
| ## Introduction | ||
|
|
||
| ## History & Metrics | ||
|
|
||
| ## Scope | ||
|
|
||
| ## Governance | ||
|
|
||
| ## Contribution Process | ||
|
|
||
| ## Tools | ||
|
|
||
| * GitHub `nodeconf` org. | ||
| * Uberconference & Soundcloud | ||
|
|
||
| ## IP | ||
|
|
||
| * NodeConf Trademark, owned by TenConf LLC (@mikeal's LLC) | ||
|
|
||
| ## TC Members | ||
|
|
||
| ## Working Groups | ||
|
|
||
| ## Requirements | ||
|
|
||
| * Link to DCO, LICENSE, and CoC. |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,19 @@ | ||
| ## Introduction | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. maybe mention naming conventions - |
||
|
|
||
| ## History & Metrics | ||
|
|
||
| ## Scope | ||
|
|
||
| ## Governance | ||
|
|
||
| ## Contributions | ||
|
|
||
| ## Tools | ||
|
|
||
| ## IP | ||
|
|
||
| ## TC Members | ||
|
|
||
| ## Working Groups | ||
|
|
||
| ## Provisional | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,94 @@ | ||
| # Node.js Foundation Project Lifecycle | ||
|
|
||
| ## Project Definition | ||
|
|
||
| The Node.js Foundation hosts several "Top Level Projects." These projects are autonomous from each other and governed by their own TC (Technical Committee) and chartered by the Node.js Foundation TSC. | ||
|
|
||
| Projects are free to create "Working Groups" which are autonomous groups collaborating to fulfill a set of responsibilities. Working Groups are eventually chartered by the TC. The TSC also charters its own Working Groups. | ||
|
|
||
| ``` | ||
| TSC | ||
| | | ||
| |-- Project A TC (Chartered By TSC) | ||
| | |-- Working Group (Chartered By Project TC) | ||
| | | ||
| |-- Project B TC (Chartered By TSC) | ||
| | |-- Working Group (Chartered By Project TC) | ||
| | | ||
| |-- Working Group A (Chartered by TSC) | ||
| |-- Working Group B (Chartered by TSC) | ||
| ``` | ||
|
|
||
| Both TLPs and TSC WGs may elect a representative to the TSC. TLPs and WGs with *incubation* status are not granted voting privileges on the TSC. | ||
|
||
|
|
||
| ## Incubation | ||
|
|
||
| The purpose of incubation is to support and mentor projects entering the foundation. The goal is for projects to be: | ||
|
|
||
| * Participatory | ||
| * Transparent | ||
| * Effective | ||
|
|
||
| While certain processes are strongly recommended because of the TSC's experience the goal of incubation is not to enforce a specific set of processes but to ensure that the processes adopted and accepted by a project achieve these goals. Therefor, the requirements for graduating from incubation are based on metrics that demonstrate success in terms of these values. These metrics are: | ||
|
||
|
|
||
| * TC is 5 members or greater. | ||
| * No more than 1/4 of the TC is affiliated with the same employer. | ||
|
||
| * Members of the TC live in at least 4 different timezones and representing no fewer than three countries. | ||
| * The decision making and release process is documented and publicly accessible. | ||
|
|
||
| A project may apply to graduate from incubation at any time by calling for a vote in the TSC. | ||
|
|
||
| While a project is incubating it is assigned at least 3 [mentors](https://github.com/nodejs/TSC/blob/master/README.md#mentors) who are responsible for working with the project to adopt policies and gain the health and contributorship it will need in order to graduate from incubation. | ||
|
||
|
|
||
| ## Lifecycle | ||
|
|
||
| The Foundation shall encourage new Projects and innovation in the community. New Projects enter the Node.js Foundation through a [Proposal](#Proposal). | ||
|
|
||
| The project should be considered mature and have a history of releases before applying to enter the foundation. | ||
|
|
||
| ## Top Level Project and Working Group Requirements | ||
|
|
||
| All TLPs and WGs are expected to operate in a transparent manor. Decisions must be made publicly through a documented public process managed by each TLP TC or WG. | ||
|
||
|
|
||
| All TLPs and WGs must use a participatory decision making process. All TLP TCs must ensure they are accurately representing the WGs in their TLP. | ||
|
|
||
| ### Security | ||
|
|
||
| All projects in the foundation share the same base security policy. The foundation's security team triages issues sent to [email protected]. Top Level Projects, whether in the incubator or not, are expected to maintain a private security repository where the security team can bring project specific issues. | ||
|
||
|
|
||
| ## Top Level Projects | ||
|
|
||
| All Top Level Project TCs must follow a [Consensus Seeking](https://en.wikipedia.org/wiki/Consensus-seeking_decision-making) process and are responsible for documenting and keeping up to date their current processes and practices. | ||
|
|
||
| Each TLP TC must elect a representative to the Node.js Foundation TSC or vote to abstain from representation on the TSC. | ||
|
|
||
| ## Applying to join | ||
|
|
||
| A proposal to join the Node.js Foundation as a Top Level Project or Working Group must include: | ||
|
|
||
| * Introduction and project description. | ||
| * Project history. | ||
| * Any available metrics or even estimates about the user base, ecosystem and community. | ||
| * Project scope. | ||
| * Current governance process. | ||
| * Current contribution process. | ||
| * List of current tools in use by the project (forums, issue trackers, GitHub orgs, etc). | ||
| * Existing IP Policy and relevant intellectual property (trademarks, domain names, etc). | ||
| * List of initial TC members. | ||
| * List of initial Working Groups. | ||
| * Prior to being admitted the project: | ||
| * Must include [DCO](https://github.com/nodejs/node/blob/master/CONTRIBUTING.md#developers-certificate-of-origin-10). | ||
| * Must include approved license (MIT, Apache2, etc). | ||
|
||
| * Must include a [Code of Conduct](https://github.com/nodejs/node/blob/master/CONTRIBUTING.md#code-of-conduct). | ||
|
||
|
|
||
| Each proposal should be sent as a pull request to this repository in the Applications directory. Proposals do not have to be complete to be submitted, the TSC can work with the authors and their respective communities in each Pull Request. | ||
|
|
||
| ### Approved Licenses | ||
|
|
||
| At this time the foundation is only accepting projects which use an MIT, BSD, ISC or Apache2 license. | ||
|
||
|
|
||
| ### Admittance | ||
|
|
||
| The Node.js Foundation is quite new and currently has a limited number of resources available to mentor new projects. As such, projects are chosen for admission in groups as mentors become available. | ||
|
||
|
|
||
| You can apply at any time and the TSC and available mentors will help improve your application while awaiting the next available approval phase. | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -2,5 +2,21 @@ | |
|
|
||
| The Node.js Foundation Technical Steering Committee is the technical governing body of the Node.js Foundation. It admits and oversees all Top Level Projects in the Node.js Foundation. It also elects a representative to the Node.js Foundation Board of Directors. | ||
|
|
||
| For more information read the [TSC Charter](https://github.com/nodejs/TSC/blob/master/TSC-Charter.md). | ||
| For more details read the [TSC Charter](https://github.com/nodejs/TSC/blob/master/TSC-Charter.md) adopted by the Node.js Foundation Board of Directors on June 17th 2015. | ||
|
|
||
| If your project is interested in joining the Node.js Foundation please read the [Project Lifecyle.md](./Project Lifecycle.md) documentation. | ||
|
|
||
| ## TSC Members | ||
|
|
||
| ## Top Level WG and TLPs | ||
|
|
||
| * Working Groups | ||
| * Mentors | ||
| * Top Level Projects | ||
| * Core TLP | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Indent error? Or are "Mentors" and "Core TLP" subcategories? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The “Core TLP” is pretty much the whole “project” as it stands today, so it is its own category and will have its own WGs. I’m sending a small change to make that clearer.
|
||
|
|
||
| ## Mentors | ||
|
|
||
| Project mentorship is not a technical role. In fact, mentors are discouraged from giving technical advise to projects. Instead, the purpose of mentorship is to encourage and improve a projects ability to be participatory, transparent, and effective. Mentors are there to help projects adopt and iterate on policies and processes that achieve these goals and eventually allow them to graduate the incubation phase. | ||
|
|
||
| * Mikeal Rogers (@mikeal) | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This line is going to become redundant as soon as this is adopted. Perhaps this belongs under "History" or "Context" or something