1. Create your project

    Start by creating a new Nuxt.js project if you don’t have one set up already. The most common approach is to use Create Nuxt App.

    Terminal
    npx create-nuxt-app my-projectcd my-project
  2. Install Tailwind CSS

    Using npm, install tailwindcss and its peer dependencies, as well as @nuxt/postcss8, and then run the init command to generate the tailwind.config.js file.

    Using @latest is required because Nuxt installs PostCSS v7 and Autoprefixer v9 by default.

    Terminal
    npm install -D tailwindcss postcss@latest autoprefixer@latest @nuxt/postcss8npx tailwindcss init
  3. Enable the Nuxt.js PostCSS plugin

    In your nuxt.config.js file, enable the @nuxt/postcss8 plugin.

    nuxt.config.js
    export default {
      buildModules: [
        '@nuxt/postcss8',
        // ...
      ],
    }
    
  4. Add Tailwind to your PostCSS configuration

    Add tailwindcss and autoprefixer to the build.postcss.plugins object of your nuxt.config.js file.

    nuxt.config.js
    export default {
      build: {
        postcss: {
          plugins: {
            tailwindcss: {},
            autoprefixer: {},
          },
        },
      }
    }
    
  5. Configure your template paths

    Add the paths to all of your template files in your tailwind.config.js file.

    tailwind.config.js
    /** @type {import('tailwindcss').Config} */
    module.exports = {
      content: [
        "./components/**/*.{js,vue,ts}",
        "./layouts/**/*.vue",
        "./pages/**/*.vue",
        "./plugins/**/*.{js,ts}",
        "./nuxt.config.{js,ts}",
      ],
      theme: {
        extend: {},
      },
      plugins: [],
    }
    
  6. Add the Tailwind directives to your CSS

    Create an ./assets/css/main.css file and add the @tailwind directives for each of Tailwind’s layers.

    main.css
    @tailwind base;
    @tailwind components;
    @tailwind utilities;
  7. Import the CSS file

    Add the newly-created ./assets/css/main.css file to the css array in the nuxt.config.js file.

    nuxt.config.js
    export default {
      css: [
        '@/assets/css/main.css',
      ],
    }
    
  8. Start your build process

    Run your build process with npm run dev.

    Terminal
    npm run dev
  9. Start using Tailwind in your project

    Start using Tailwind’s utility classes to style your content.

    App.vue
    <template>
      <h1 class="text-3xl font-bold underline">
        Hello world!
      </h1>
    </template>