Summary
Currently we have a number of interface elements that utilize OOUI for presentation. As we evaluate various dark mode options, it would be helpful to better understand what the effort would be for these components to adopt CSS variables.
Parameters
The focus of this spike is exclusively on estimating technical effort. We should assume this question is separate from the following questions, which we will be working through elsewhere:
- Ownership over and responsibility for maintenance of OOUI
- Whether we even want to make these changes in OOUI at all
- Whether the Design Systems Team will be using CSS variables for its own internal use case (we have https://phabricator.wikimedia.org/T353172 for this which DST will be working on )
Acceptance Criteria
- We have made up a companion proof of concept demonstrating an OOUI component and/or page using CSS variables
- Discuss with the DST team and write up a plan or existing blockers for the following
- We have outlined multiple possible implementations
- In light of these options, we have written out a potential implementation plan for this conversion so as to make more concrete exactly what would be implemented to adopt CSS variables across all of OOUI
- We have produced a high-level, time-based estimate for what would be required to implement this plan
- If necessary/informative, we have broken this estimate down by component where possible / called out differences in implementation
- We have collaborated with DST and others who have worked with OOUI around establishing parameters and checked our understanding of how tokens currently work and what the path to adoption would be
- Document outcome of conversations above
- Create a proof of concept patch for how CSS Variables could be integrated into OOUI
- If open questions remain, create a follow-up spike for next sprint with these questions