Create a colour calculator for use when specifying theme colours
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 53
- Forks
- 63
- Avg merge
- 2d 4h
- Merged PRs (30d)
- 15
Description
## Summary
We are expanding the theming to allow mor colours to be customised. Ideally we would allow these colours to be specified in any colour space (rgb, hex, hsl). However, in order to easily perform calculations on the different channels, we need to convert any theme colour to hsl. This ticket is to explore methods to do this using pure CSS.
## 💬 Description
- Explore how to perfrom colour conversions using pure CSS.
- If can't be done with pure CSS, explore other methods: CSS preprocessor, javascript applet, etc.
- Determine where in the flow this happens.
- - Is this an applet on the webiste that outputs colour values that can be used to set tokens?
- - Does this happen in background when setting a theme token value?
- - Do we provide a number of tokens for people to specify in different ways? (--ic-action-h, --ic-action-s, --ic-action-l, --ic-action-r, --ic-action-g, --ic-action-b, --ic-action-hex)
## 💰 User value
This makes it easier for users to specify colours, and provides ICDS with ability to perform complex calculations on the individual channels.
## 📚 User Stories
If relevant, describe the high-level functionality as user stories.
*As an* ICDS user:
*I need*
*So that*
## 📝 Acceptance Criteria
If relevant, describe in full detail the different interactions and edge cases that the component or patterns needs to fulfil.
*Given*
*When*
*Then*
## ✏ Designs
If there's a Figma design file (or other mock-up), include it here.
## 🧾 Guidance
If there's written guidance or documentation, include a link to it here.
## Related tickets
#1496
#1047
#1662
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No file, test, or entry point is named. Start by reviewing related tickets #1496, #1047, and #1662, then compare pure CSS, preprocessor, and JavaScript approaches for converting theme colours. Done means selecting an approach and defining where conversion occurs and how users provide colour values.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- css, javascript
- Domain
- design, frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100