Overview
The SAAC Frontend template uses Tailwind CSS v4, the latest version with significant improvements in performance, developer experience, and build tooling integration.Tailwind CSS v4 is a major update that includes a native Vite plugin, improved JIT compiler, and simplified configuration.
Installation
Tailwind CSS v4 is already installed in the template:package.json
Key Packages
Core Tailwind CSS framework with JIT compiler
Native Vite plugin for seamless integration (no PostCSS needed)
Vite Integration
Tailwind CSS v4 integrates directly with Vite through a native plugin:vite.config.ts
Why no PostCSS configuration?
Why no PostCSS configuration?
Previous Tailwind versions (v3 and earlier) required PostCSS configuration:Tailwind CSS v4 eliminates this requirement:
- Native Vite plugin handles all processing
- Faster builds (no PostCSS overhead)
- Simpler setup (one less config file)
- Better HMR (Hot Module Replacement)
CSS Setup
The template includes Tailwind’s base styles insrc/index.css:
src/index.css
Tailwind CSS v4 automatically detects and processes your CSS files. You don’t need
@tailwind directives unless you want explicit control over layer ordering.Adding Tailwind Directives (Optional)
If you want explicit control over where Tailwind injects its styles:src/index.css
Understanding Tailwind Layers
Understanding Tailwind Layers
Using Tailwind Classes
Apply utility classes directly in your JSX:src/App.tsx
Common Utility Patterns
JIT Compiler
Tailwind CSS v4 uses a Just-In-Time (JIT) compiler that generates styles on-demand.Benefits
Why JIT is Better
Why JIT is Better
Traditional (v2) approach:
- Generated ALL utility classes upfront
- Large CSS file during development (10+ MB)
- Slow initial load
- Purged unused classes in production
- Generates only the classes you use
- Small CSS file (few KB)
- Instant compilation
- Same size in dev and production
- Supports arbitrary values on-the-fly
Arbitrary Values
JIT enables arbitrary values without configuration:Use arbitrary values sparingly. Prefer Tailwind’s default scale for consistency.
Configuration (CSS-based)
Tailwind CSS v4 uses CSS-based configuration instead oftailwind.config.js.
Theme Customization
Define custom theme values using CSS variables:src/index.css
Migration from tailwind.config.js
Migration from tailwind.config.js
Old way (v3):New way (v4):Benefits:
tailwind.config.js
src/index.css
- No JavaScript config file
- CSS variables work at runtime
- Better IDE support
- Easier to override per-component
Dark Mode
Implement dark mode using CSS variables:src/index.css
dark: variant:
Custom Utilities
Create custom utility classes:src/index.css
Plugins
Tailwind CSS v4 supports official plugins:Forms Plugin
vite.config.ts
Typography Plugin
prose class for beautiful typography:
IntelliSense
VS Code Extension
Install Tailwind CSS IntelliSense:- Autocomplete: Suggests classes as you type
- Hover preview: Shows CSS values on hover
- Syntax highlighting: Colors for utility classes
- Linting: Warns about invalid classes
Configuration
.vscode/settings.json
Production Optimization
Tailwind CSS v4 automatically optimizes for production:Automatic Optimizations
Automatic Optimizations
When you run
npm run build, Tailwind:- Removes unused styles: Only includes classes found in your source code
- Minifies CSS: Compresses selectors and properties
- Removes comments: Strips all CSS comments
- Optimizes repeated rules: Deduplicates identical declarations
No additional configuration needed. Tailwind v4 handles this automatically via the Vite plugin.
