- Name of tool/project: Codex
- Project home page: https://doc.wikimedia.org/codex/main/ and https://www.mediawiki.org/wiki/Codex
- Name of team requesting review: Design-System-Team
- Primary contact: @Catrope
- Target date for deployment: July 19-21 train (tentative, needs confirmation from Web team)
- Link to code repository / patchset: https://gerrit.wikimedia.org/g/design/codex (or view the Github mirror at https://github.com/wikimedia/design-codex ). See also the related ResourceLoaderModule subclass in MediaWiki core
Description of the tool/project: Library of reusable UI components written in Vue, for use in MediaWiki and related software
Description of how the tool will be used at WMF: Initially, this will be used to gradually replace the various ad-hoc Vue-based component libraries that currently exist (such as WVUI) as Codex grows and achieves feature parity with them. Long-term, Codex is intended to be the main UI component library used for frontend development in the wikiverse, centralizing design decisions about
Current status: Codex is still under active development, and will continue to be for quite some time. Codex is available as a ResourceLoader module in MediaWiki, but is not currently used in any deployed code. This security review request is for the initial deployment (planned for Q4), where we plan to use Codex to power the search bar in Vector (which currently uses WVUI). After the initial deployment, development of Codex will continue, and we plan to continuously deploy updates and new components as they are developed.
- The only runtime dependency is Vue.js (currently version 3.2.27)
- There are many devDependencies, see the package.json files in the repository (both in the root directory and in each of the packages/*/ directories)
Has this project been reviewed before?
Working test environment
https://doc.wikimedia.org/codex/main/ has demos of each component. Codex is also available (but currently unused) in MediaWiki. Steps to demo in MediaWiki are outlined in T299143#7784434.
The Design-System-Team is responsible for Codex and will continue to actively develop it after the initial deployment. The engineers on the DST are @Catrope, @AnneT and @egardner . The engineering manager is @NHillard-WMF. @DAbad is functioning as interim technical product manager.