a11y-theme-builder
a11y-theme-builder copied to clipboard
[EPIC] Allow users to be able to edit palette and default color theme in existing design system
Suggestion/Concern
Currently it isn't possible in Theme Builder to change a color in a color palette. Only new colors can be added. One of the reasons for the current limitation is the challenge of handling the fallout that could happen due to such a change. It is also likely that the fallout may not be completely managed without human intervention.
For example, if a user changes a color, what happens to all of the molecules that were already using the original color? What if the original color was the primary, secondary or tertiary color defined in the default color theme? Which other default color theme values would be impacted? Which atoms depend on the affected color theme? Which "on" colors would need to be recalculated?
The goal of this issue is to design how a color change could be made by the user, how the application would communicate to the user the impending issues that might arise from the change, what default values could be used until the user makes the manual updates, how is the user made aware of what manual updates need to be made, etc and then implement those designs.
Proposed Solution
When this work is complete, an end user should be able to load an existing design system, add or delete a color from their color palette and modify the primary, secondary and tertiary values in the design system's default color palette. As such changes happen, the user should receive information relevant to the changes that they have made so that they are well aware of what issues that such a change can have on the design system, what default values Theme Builder will use in an effort to keep the design system accessible and what, if any, manual changes/decisions the user may need to make in order to ensure that the updated design system remains accessible
The tasks that we need to complete to get the functionality that we desire:
- [ ] Ability to manage the color palette, even after design system has been established
- [x] https://github.com/finos/a11y-theme-builder/issues/914
- allows user to provide core settings required when creating a new design system
- [x] https://github.com/finos/a11y-theme-builder/issues/916
- allows user to add colors to the palette
- [ ] https://github.com/finos/a11y-theme-builder/issues/917
- allows user to edit shades in the palette
- [ ] https://github.com/finos/a11y-theme-builder/issues/918
- provides user with insight on what changes the proposed shade editing will result in
- [x] https://github.com/finos/a11y-theme-builder/issues/919
- allows user to delete colors from the color palette
- [ ] https://github.com/finos/a11y-theme-builder/issues/977
- introduces a stepper component, allows user to preview the component in the Components tab
- [x] https://github.com/finos/a11y-theme-builder/issues/914
- [ ] Ability to edit the Color Theme of the design system, even after the design system has been established
- [ ] https://github.com/finos/a11y-theme-builder/issues/920
- allows user to specify the primary color when creating a design system
- [ ] https://github.com/finos/a11y-theme-builder/issues/970
- allows user to affect the White, Black and Information color palette for Light and Dark modes
- [ ] https://github.com/finos/a11y-theme-builder/issues/971
- allows Theme Builder to determine what downstream components will be affected by a color change
- [ ] https://github.com/finos/a11y-theme-builder/issues/920
- [x] https://github.com/finos/a11y-theme-builder/issues/968
- Update default design system theme to match wireframes?
For post MVP, we need to provide the user the ability to:
- [ ] https://github.com/finos/a11y-theme-builder/issues/973
- allows Theme Builder to determine adjust the hue on a set of shades for a given color
- [ ] https://github.com/finos/a11y-theme-builder/issues/976
- allows user to modify each of the colors in the dark mode color theme