VS Code Extensions
Tailwind Pastel

Tailwind Pastel

by alkemic-studio

Highlights Tailwind utility classes by category with distinct colors for visual scanning

Downloads

83

Rating

5.0 / 5 (1)

Version

0.0.2

Last updated

May 05, 2026

VS Marketplace Version VS Marketplace Installs VS Marketplace Rating GitHub stars last commit license Sponsor

Usage

Tailwind gives you the wall of utilities. Pastel helps you read it — every class tinted by one of six categories (layout, box, typography, surface, motion, other), so your eyes group them before your brain does.

Usage

Features

  • Category-based coloring — every utility's prefix is colored by category
  • Variant-aware — md:hover:bg-red-500 is classified by the bg- utility, ignoring variant prefixes, !important, and negative - markers
  • Arbitrary values supported — w-[calc(100%-2rem)] and bg-[#1a1a1a] are tokenized correctly even with brackets containing spaces or colons
  • Helper-aware — picks up class strings inside clsx(), cn(), cva(), twMerge(), tagged templates (cn`...`), and namespaced calls (lib.cn(...))
  • Debounced updates — re-highlights 150ms after edits to stay snappy on large files

Categories

Six high-level groups, chosen so they're visually distinguishable in both light and dark themes (Tailwind 400-shade palette):

Category Color Covers
Layout Blue flex, grid, items-*, justify-*, gap-*, positioning, display
Box Emerald sizing (w-*, h-*, size-*) and spacing (p-*, m-*, space-*)
Typography Amber text-*, font-*, leading-*, tracking-*, decorations, transforms
Surface Pink bg-*, border*, rounded*, shadow*, ring*, opacity, blur, etc.
Motion Violet transition*, duration-*, animate-*, transform, translate-*
Other Gray cursor-*, select-*, pointer-events-*, scroll/snap/touch, fallback

Supported Languages

  • TypeScript React (.tsx)
  • JavaScript React (.jsx)
  • HTML
  • Vue
  • Svelte
  • Astro

Detection

Class strings are extracted from two sources:

(1) Class attributes — class, className, ngClass, class:list, plus their bracket-bound Angular forms ([class], [ngClass]). Static strings ("...", '...') and JSX template literals (className={`...`}) without ${} interpolation are supported.

(2) Helper calls — string literals inside any of these helpers are scanned, including namespaced (lib.cn(...)) and tagged template (cn`...`) forms:

clsx, cn, cx, cva, tw, twMerge, twJoin, classNames, classnames

Templates with ${...} interpolation are skipped to keep position mapping accurate.

Configuration

Setting Type Default Description
tailwindPastel.enabled boolean true Enable category highlighting

Commands

Command Description
Tailwind Pastel: Toggle Highlighting Flip tailwindPastel.enabled — writes to workspace settings if defined there, otherwise to global.

License

MIT — see LICENSE.md.

Related extensions