Tailwind CSS Integration with Ignite UI for Angular

    Ignite UI for Angular offers full theming customization through CSS variables and a powerful Sass engine. In this guide, you'll learn how to integrate Tailwind CSS into an Angular project and enhance it with custom utility classes provided by the `igniteui-theming` package. These classes expose Ignite UI design tokens for colors, shadows, and typography, enabling a seamless utility-first styling experience.


    Overview

    Note

    This guide assumes you already have Ignite UI for Angular installed. If not, run:

    ng add igniteui-angular
    

    1. Install Tailwind

    Install tailwind using the following command:

    npm install tailwindcss @tailwindcss/postcss postcss --force
    

    2.Configure PostCSS Plugins

    Create a .postcssrc.json file in the root of your project and add the @tailwindcss/postcss plugin to your PostCSS configuration.

    {
      "plugins": {
        "@tailwindcss/postcss": {}
      }
    }
    

    3.Import Tailwind CSS

    In your main stylesheet (styles.css or styles.scss), import Tailwind and the Ignite UI Tailwind theme configuration.

    @import "tailwindcss";
    @import "igniteui-theming/tailwind/themes/base";
    

    If your project uses sass for styling:

    @import "tailwindcss";
    @use "igniteui-theming/tailwind/themes/base";
    

    Ensure the import path resolves correctly from node_modules.

    Using Ignite UI Custom Utility Classes

    The igniteui-theming package includes a custom Tailwind configuration that exposes Ignite UI design tokens through utility classes. These include support for:

    • Colors and contrast colors

    • Elevation (shadows)

    • Typography styles

    Let’s look at how to use each.

    Color Utility Classes

    Use Ignite UI color tokens directly in your HTML:

    <h1 class="bg-primary-500 text-primary-500-contrast">This is a title</h1>
    

    You can explore Tailwind’s full color system here, and apply it using the Ignite UI-provided class names.

    Shadow utility classes

    You can add depth using any of the predefined elevation levels (from 0 to 24):

    <div class="shadow-elevation-8">Elevated container</div>
    

    You can find all the shadow-related utility classes provided by Tailwind here

    Typography custom utility styles

    To apply the font, add the font-ig class to a top-level element. You can also define the base font size using the text-base utility class. We provide custom utility classes for each typography level (e.g., h1, h2, body-1). Use them like so:

    <p class="type-style-h3">This paragraph gets the h3 styles</p>
    

    Each class applies all necessary font settings, spacing, and sizing according to the Ignite UI type scale.

    Note

    These custom typography utilities only work outside of ig-typography. If you have to set the ig-typography CSS class on a top-level element, these styles won't apply.

    Sample

    In the sample below, you’ll see a 404 page built entirely with Tailwind utility classes, including our custom utilities for shadows, colors, and typography.

    You can see how to style each component by checking out the Styling section in its respective documentation topic.

    Note

    This sample is fictional and fully custom, it’s not part of the Ignite UI component library.

    Summary

    With just a few configuration steps, you can combine Tailwind’s utility-first approach with Ignite UI’s robust design system. This integration allows you to rapidly build consistent, themed UI components using well-defined tokens for color, elevation, and typography—right from your HTML.

    Additional Resources


    Our community is active and always welcoming to new ideas.