Skip to content

Conversation

@didoo
Copy link
Contributor

@didoo didoo commented Sep 25, 2025

📌 Summary

This PR is the initial scaffolding of the showcase pages that will be used for the dry-run migrations (and subsequent actual migration) of the HDS components (as in theming/re-skinning).

This PR is based on top of #3240.

🛠️ Detailed description

In this PR I have:

  • introduced a new <ShwCarbonizationComparisonGrid> component, used to showcase an HDS component with different themes applied (HDS standard + the four Carbon themes g0/g10/g90/g100) next to the equivalent Carbon web components for that specific variant/state.
  • added a set of "carbonized" showcase pages, dedicated to showing all the (meaningful) variants/states of a foundation or component, and compare them with the expected look&feel of the original equivalent Carbon component
    • Note: in this early phase, they are intentionally left as single file, even if they're quite long; later when we have a better idea of what we want to do and we start to see emerging patterns, we can decide what should be the final implementation for these pages
  • updated the showcase/app/index.html file to include the scripts (and the hiding styles for the not-yet-loaded web components)

🔎 How to review

Note

This is not the final implementation, there will be likely things we will want to change/update, once we start to work on the dry-run migrations; these changes will likely be done in follow-up PRs.

Check the different carbonized pages and how they've been implemented (also their organization as single file .gts components):

  • Foundations > Color
  • Foundations > Typography
  • Foundations > Focus Ring
  • Components > Badge
  • Components > Badge Count
  • Components > Button
  • Components > Form / TextInput
  • Components > SegmentedGroup

Review the implementation of the <ShwCarbonizationComparisonGrid> component, and see if the API is clear to you; look also at how it's used across the "carbonized" showcase pages

Review how the Carbon Web components are instantiated in the code, and how Carbon theming is applied to them

Note: at the moment there's an open conversation about how to use the cds-icon web component in an Ember app, that has not been resolved yet, so we're using the HdsIcon component instead

👉 👉 👉 Previews:

🛠️ How to test

Note

At the moment the HDS component look the same for the different themes, because the underlying design tokens are all the same; once we start the dry-run migrations (in a follow-up PR) they will start to (should) look more and more like the equivalent Carbon web components shown below

Open the different "carbonized" pages and see how the HDS components are rendered, and how the Carbon Web components are rendered

🗒️ TODOs

🔗 External links

Jira ticket: https://hashicorp.atlassian.net/browse/HDS-5533


👀 Component checklist

  • Percy was checked for any visual regression
  • A changelog entry was added via Changesets if needed (see templates here)
    • changelogs will be added in the main feature branch

💬 Please consider using conventional comments when reviewing this PR.

📋 PCI review checklist
  • If applicable, I've documented a plan to revert these changes if they require more than reverting the pull request.
  • If applicable, I've worked with GRC to document the impact of any changes to security controls.
    Examples of changes to controls include access controls, encryption, logging, etc.
  • If applicable, I've worked with GRC to ensure compliance due to a significant change to the in-scope PCI environment.
    Examples include changes to operating systems, ports, protocols, services, cryptography-related components, PII processing code, etc.

@vercel
Copy link

vercel bot commented Sep 25, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Updated (UTC)
hds-showcase Ready Ready Preview Oct 24, 2025 8:00pm
hds-website Ready Ready Preview Oct 24, 2025 8:00pm

@didoo didoo changed the title [WIP] [Project solar / Phase 1 / showcase] Scaffolding of the showcase pages for the carbonization of the HDS components [WIP] [Project Solar / Phase 1 / showcase] Scaffolding of the showcase pages for the carbonization of the HDS components Sep 25, 2025
@didoo didoo changed the title [WIP] [Project Solar / Phase 1 / showcase] Scaffolding of the showcase pages for the carbonization of the HDS components [WIP] [Project Solar / Phase 1 / Showcase] Scaffolding of the showcase pages for the carbonization of the HDS components Sep 25, 2025
@didoo didoo force-pushed the project-solar/phase-1/HDS-5242_showcase/carbonization-pages-scaffolding branch from 19234bc to cd4e9ef Compare September 30, 2025 14:13
@didoo didoo force-pushed the project-solar/phase-1/HDS-5242_showcase/carbonization-pages-scaffolding branch from cd4e9ef to a0b23a9 Compare September 30, 2025 14:21
@didoo didoo force-pushed the project-solar/phase-1-main-feature-branch branch from 519a6a6 to 3863dfa Compare September 30, 2025 14:50
@didoo didoo force-pushed the project-solar/phase-1/HDS-5242_showcase/carbonization-pages-scaffolding branch from a0b23a9 to 403ac45 Compare September 30, 2025 17:24
@didoo didoo force-pushed the project-solar/phase-1/HDS-5242_showcase/carbonization-pages-scaffolding branch from 403ac45 to 9376a33 Compare September 30, 2025 17:30
@didoo didoo force-pushed the project-solar/phase-1/HDS-5242_showcase/carbonization-pages-scaffolding branch from 9376a33 to 8bc9cc9 Compare September 30, 2025 20:34
@didoo didoo force-pushed the project-solar/phase-1/HDS-5242_showcase/carbonization-pages-scaffolding branch from 8bc9cc9 to f8e77f1 Compare October 2, 2025 14:27
@didoo didoo force-pushed the project-solar/phase-1/HDS-5242_showcase/carbonization-pages-scaffolding branch from f8e77f1 to 68248e2 Compare October 7, 2025 17:14
didoo and others added 27 commits October 24, 2025 20:40
…folder/route

will be used later to detect if we need to do something around theme switcher and CSS to load
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants