How the unified collective is governed
The unified collective is a federated system of organizations, consisting in turn of projects, governed by the team members steering them.
This project is maintained by the unified collective core team and describes how the collective is governed.
This document describes the teams of the collective. Additional policies describe other aspects of governance in detail:
decisions.md
— how decisions are mademembers.md
— how people participatemoderation.md
— how the code of conduct is enforcedorganizations.md
— how organizations are managedpermissions.md
— the permissions members have+-------------------------------------------------+
| COLLECTIVE |
| core & moderation |
| |
| |
| ORGANIZATIONS |
| +-------------+ +-------------+ +-------------+ |
| | unified | | remark | | rehype | |
| +-------------+ +-------------+ +-------------+ |
| +-------------+ +-------------+ +-------------+ |
| | retext | | redot | | mdx | |
| +-------------+ +-------------+ +-------------+ |
| +-------------+ +-------------+ +-------------+ |
| | micromark | | vfile | | syntax tree | |
| +-------------+ +-------------+ +-------------+ |
+-------------------------------------------------+
The collective is governed by teams. Teams are scoped to one organization or the collective, respectively governing the projects or organizations under them. The core and moderation teams are special.
Teams serve as leadership for their scope. They:
Teams should be made up of:
How teams communicate internally and externally is left to each team to decide, but:
Organization teams are scoped to an organization and govern the projects under it.
They have the same responsibilities as all teams, and additionally:
Organization teams additionally include:
The unified team is an organization team responsible for @unifiedjs.
Titus Wormer (@wooorm) <[email protected]> (lead)
Remco Haszing (@remcohaszing) <[email protected]>
Christian Murphy (@ChristianMurphy) <[email protected]>
John Otander (@johno) <[email protected]>
Joun Qin (@JounQin) <[email protected]>
Junyoung Choi (@Rokt33r) <[email protected]>
Merlijn Vos (@Murderlon) <[email protected]>
Mudit Ameta (@zeusdeux) <[email protected]>
Stephan Schneider (@zcei) <[email protected]>
Victor Felder (@vhf) <[email protected]>
The remark team is an organization team responsible for @remarkjs.
John Otander (@johno) <[email protected]>
Titus Wormer (@wooorm) <[email protected]> (lead)
Remco Haszing (@remcohaszing) <[email protected]>
Christian Murphy (@ChristianMurphy) <[email protected]>
Jonathan Haines (@BarryThePenguin) <[email protected]>
Joun Qin (@JounQin) <[email protected]>
Junyoung Choi (@Rokt33r) <[email protected]>
Keith McKnight (@kmck) <[email protected]>
Marouane Fazouane (@fazouane-marouane) <[email protected]>
Merlijn Vos (@Murderlon) <[email protected]>
Victor Felder (@vhf) <[email protected]>
Zeke Sikelianos (@zeke) <[email protected]>
Mudit Ameta (@zeusdeux) <[email protected]>
Nikita Sobolev (@sobolevn) <[email protected]>
The rehype team is an organization team responsible for @rehypejs.
Keith McKnight (@kmck) <[email protected]>
Titus Wormer (@wooorm) <[email protected]> (lead)
Remco Haszing (@remcohaszing) <[email protected]>
Christian Murphy (@ChristianMurphy) <[email protected]>
John Otander (@johno) <[email protected]>
Joun Qin (@JounQin) <[email protected]>
Merlijn Vos (@Murderlon) <[email protected]>
The retext team is an organization team responsible for @retextjs.
The redot team is an organization team responsible for @redotjs.
Christian Murphy (@ChristianMurphy) <[email protected]> (lead)
Titus Wormer (@wooorm) <[email protected]>
None.
The mdx team is an organization team responsible for @mdx-js.
John Otander (@johno) <[email protected]> (lead)
Remco Haszing (@remcohaszing) <[email protected]>
Tim Neutkens (@timneutkens) <[email protected]>
Titus Wormer (@wooorm) <[email protected]>
Christopher Biscardi (@ChristopherBiscardi) <[email protected]>
Joun Qin (@JounQin) <[email protected]>
Laurie Barth (@laurieontech)
Sidhartha Chatterjee (@sidharthachatterjee) <[email protected]>
Adam Morse (@mrmrs) <[email protected]>
Ahmad Awais (@ahmadawais) <[email protected]>
Brent Jackson (@jxnblk) <[email protected]>
Guillermo Rauch (@rauchg) <[email protected]>
Jessica Stokes (@ticky) <[email protected]>
Stephan Schneider (@zcei) <[email protected]>
The micromark team is an organization team responsible for @micromark.
John Otander (@johno) <[email protected]>
Joun Qin (@JounQin) <[email protected]>
Marouane Fazouane (@fazouane-marouane) <[email protected]>
Merlijn Vos (@Murderlon) <[email protected]>
Remco Haszing (@remcohaszing) <[email protected]>
Mudit Ameta (@zeusdeux) <[email protected]>
Stephan Schneider (@zcei) <[email protected]>
Victor Felder (@vhf) <[email protected]>
The syntax tree team is an organization team responsible for @syntax-tree.
Keith McKnight (@kmck) <[email protected]>
Titus Wormer (@wooorm) <[email protected]> (lead)
Christian Murphy (@ChristianMurphy) <[email protected]>
Jonathan Haines (@BarryThePenguin) <[email protected]>
Joun Qin (@JounQin) <[email protected]>
Merlijn Vos (@Murderlon) <[email protected]>
Remco Haszing (@remcohaszing) <[email protected]>
The vfile team is an organization team responsible for @vfile.
Christian Murphy (@ChristianMurphy) <[email protected]>
Joun Qin (@JounQin) <[email protected]>
Junyoung Choi (@Rokt33r) <[email protected]>
Remco Haszing (@remcohaszing) <[email protected]>
Collective teams are scoped to the whole collective and govern the organizations under it.
They have the same responsibilities as all teams, and additionally:
The core team is a collective team responsible for governing all other teams. This team does not have a lead and, to limit conflicts of interest, should not include moderation team members.
They:
Christian Murphy (@ChristianMurphy) <[email protected]>
John Otander (@johno) <[email protected]>
Merlijn Vos (@Murderlon) <[email protected]>
Titus Wormer (@wooorm) <[email protected]>
Richard Littauer (@RichardLitt) <[email protected]>
Stephan Schneider (@zcei) <[email protected]>
The moderation team is a collective team responsible for enforcing the code of conduct. This team does not have a lead and, to limit conflicts of interest, should not include core team members.
Olivia Hugger (@komaeda) <[email protected]>
Richard Littauer (@RichardLitt) <[email protected]>
The collective is unified as a whole with the organizations under it and the projects under them.
An organization is a collection of projects around a shared area typically hosted in a GitHub organization.
A project is a single repository on GitHub governed by a team.
An initiative is a (proposed) change.
We follow the Contributor Covenant code of conduct. Please read it, as you agree to abide by it by interacting with the collective spaces (includes any online or offline place such as email, GitHub, npm, or Twitter).
This project is inspired by the Rust governance proposal, the Node governance docs, the Node admin project, the Electron governance docs, and Django’s dissolving of core.
This work is licensed under a Creative Commons Attribution 4.0 International License.