Skip to content

chore: kickstart vanilla-extract migration#5100

Merged
traefiker merged 11 commits intotraefik:masterfrom
gndz07:poc-vanilla-extract
Oct 16, 2025
Merged

chore: kickstart vanilla-extract migration#5100
traefiker merged 11 commits intotraefik:masterfrom
gndz07:poc-vanilla-extract

Conversation

@gndz07
Copy link
Member

@gndz07 gndz07 commented Oct 14, 2025

Description

Fixes #422

This PoC is part of the study, and we can move forward from this point.

We decided to choose vanilla-extract for several practical reasons:

  • not very different syntax with our current implementation with stitches
  • allows us to migrate progressively
  • no compiling needed on the user's side

Key points:

  • We will migrate progressively, one component after another
  • Stitches and vanilla-extract component can live side by side, so we can remove stitches support only after we finish the migration for all of the components
  • We aim for no API changes from the user perspective

Please refer to the migration plan and developer guide to get more insight on how we will proceed with this migration.

Two components are migrated already to be used as examples: Box and Badge component.

Preview

Stitches and vanilla-extract components should be visually identical with the exact same props for each components:

image

@gndz07 gndz07 changed the title chore: kickstart vanilla extract migration chore: kickstart vanilla-extract migration Oct 14, 2025
@gndz07 gndz07 force-pushed the poc-vanilla-extract branch from 81952a5 to d66e7af Compare October 14, 2025 12:13
@gndz07 gndz07 added status/2-needs-review area/infrastructure Pull requests that update infra/dependencies 00-type/task labels Oct 14, 2025
@gndz07 gndz07 requested a review from mdeliatf October 14, 2025 12:32
Copy link
Contributor

@mdeliatf mdeliatf left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! Amazing work, Gina!!

I just have one non-blocking question: in CLAUDE.md we mention that Stitches is the core styling system; shouldn’t we say instead that it was, and that we’re migrating to Vanilla Extract with its specs?

@gndz07
Copy link
Member Author

gndz07 commented Oct 15, 2025

@mdeliatf yes, but maybe in the near future. True that we will move forward with vanilla-extract, but during the migration stage the default will still be the stitches components. When developing new component that will need to be used right now, I imagine we will still build one with stitches to avoid breaking changes (mostly for the provider). While migrating each components, claude (and the developer) should refer to the migration guide.

@traefiker traefiker merged commit d6dadd1 into traefik:master Oct 16, 2025
3 checks passed
@traefiker
Copy link
Contributor

🎉 This PR is included in version 12.0.3 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

00-type/task area/infrastructure Pull requests that update infra/dependencies released

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[STUDY] migrate from stitches

3 participants