Skip to content

Contributing

We welcome contributions from everyone! There are several ways to contribute:

  • Adding or commenting on tasks in our project management system, Phabricator (links below)
  • Contributing to the design process
  • Suggesting new components and design tokens
  • Writing and submitting code
  • Reviewing code
  • Updating and expanding library documentation

Contributions to Codex are covered by the Code of Conduct for Wikimedia technical spaces.

How to stay up-to-date

Consider following Codex design, development, roadmaps, and releases in these places:

Task tracking

Tasks are tracked in Phabricator. We use two different Phabricator workboards:

  • Codex: used to indicate that a task is related to Codex. We do not track task status here.
  • Design-System-Team: used to triage, sort, prioritize, and refine tasks that the Design System Team and contributors will work on. We track status of actively worked on tasks in sprint milestones.

I want to know the status of something

Check the Codex and Design-System-Team workboards in Phabricator to see if a task exists for that work (for detailed Phabricator search tips, visit this page). If so, the task will be in the column that represents its current status. If not, you can create a task (see below) or contact us (see the Design System Team page on mediawiki.org)

I want to request a feature

You are welcome to create new tasks with the #Codex and #Design-System-Team tags. New tasks will go into our "Needs Triage (Incoming Requests)" column and will be triaged regularly. Please remember that Codex is maintained by a nonprofit—we won't be able to meet all feature requests, and it might take time to get to your request.

To request a new component, please fill out the new component task template.

I want to follow parts of your work

Create a Phabricator account and add yourself as a subscriber to a task to get notified when updates are made.

I want to contribute to a task

Great! Create or claim a task as soon as you decide to work on it. This will help avoid overlapping, duplicate, or conflicting work. If you're creating a task, add as much detail as you can about the scope of the task: for example, what needs to be completed before the task can be considered "done"?