Clean up hardcoded hex colors in app/components/ and replace with $slp- design tokens
Summary
An audit of app/components/ revealed ~30+ hardcoded hex color values across ~15 files. Many of these are exact matches to existing slippers-ui design tokens and can be replaced directly. Others are close approximations or represent gaps in the token library.
This issue tracks the cleanup effort to improve design consistency and reduce drift from the token system.
Related: #971 (Typography design token naming)
Exact Token Matches (find-and-replace, zero visual change)
These hex values are identical to existing tokens and can be swapped safely.
| Hex | Token | File(s) |
|---|---|---|
#171321 |
$color-surface-700 / $color-text-300 |
templates/DevSurveyLanding.vue (2x), partners/GroupButtons.vue, solutions/GroupButtons.vue, free-trial/DevSecOpsHero.vue |
#45424d |
$color-surface-600 |
gitlab-duo/Faq.vue, gitlab-duo/Intro.vue, gitlab-duo/Addons.vue, gitlab-duo/GartnerBanner.vue, common/RecognitionCards.vue, platform/FeaturedCta.vue, why-gitlab/TenReasons.vue |
#f2f1f5 |
$color-surface-100 |
templates/DevSurveyLanding.vue |
#e8e7eb |
$color-surface-200 |
common/MktoForm.vue |
#d1d0d3 |
$color-surface-300 |
templates/CaseStudy.vue (box-shadow) |
#a2a1a6 |
$color-surface-400 |
gitlab-duo/Faq.vue |
#74717A |
$color-surface-500 / $color-text-200 |
releases/whats-new/FeatureList.vue |
#7759C2 |
$color-accent-500 / $color-text-link-100 |
common/About.vue, company/CopyAbout.vue |
#e3d6ff |
$color-surface-950 |
company/ByTheNumbers.vue (gradient start) |
#ffd4d8 |
$color-alert-100 |
company/ByTheNumbers.vue (gradient end) |
#F6F3FE |
$color-surface-800 |
common/AccordionFlourish.vue (default prop) |
#fff / #FFFFFF |
$color-surface-50 / $color-text-50 |
templates/DevSurveyLanding.vue |
Edited by Megan Filo