chore: upgrade Tailwind CSS from v3 to v4#308
Merged
SimplicityGuy merged 8 commits intomainfrom Apr 16, 2026
Merged
Conversation
Replace tailwind.config.js with @import/@plugin/@source directives in tailwind.input.css. The JS config is no longer needed.
Switch from tailwindcss@^3 to @tailwindcss/cli@^4. Remove --config flag since configuration is now in the CSS input file.
The tailwind.input.css @source directives reference admin.html and admin.js, but they were not being copied into the css-builder stage. This pre-existing gap (the v3 tailwind.config.js content array listed all four files but only two were copied) caused any Tailwind utility classes used exclusively in admin.* files to be omitted from the generated stylesheet.
Switch from tailwindcss@^3 to @tailwindcss/cli@^4. Remove --config flag since configuration is now in the CSS input file.
Update docs/dockerfile-standards.md CSS builder example to reflect the Tailwind v4 CLI invocation. Add explore/static/tailwind.css to .gitignore so the generated stylesheet (built only inside Docker) is not accidentally committed if a developer runs the CLI locally.
In Tailwind v4, classes defined in @layer components cannot be applied via @apply from other classes. The build failed with "Cannot apply unknown utility class 'btn-base'" when trying to compose .btn-primary from .btn-base. Switching all 14 component classes to v4's new @Utility directive lets them participate in @apply composition. The generated CSS correctly inlines the base styles into each variant (verified: btn-primary in the output contains the full inline-flex/padding/transition cascade from btn-base).
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
Contributor
Contributor
Contributor
Contributor
Contributor
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
@import,@plugin,@source,@theme,@utility)What changed
v3 → v4 patterns
Bugs fixed
Files
Test plan
Notes