Installation
Install Tailwind CSS with Ember.js
Setting up Tailwind CSS in an Ember.js project.

- Create your project- Start by creating a new Ember.js project if you don't have one set up already. The most common approach is to use Ember CLI. Terminal- npx ember-cli new my-project --embroider --no-welcomecd my-project
- Install Tailwind CSS- Using npm, install - tailwindcssand its peer dependencies, as well as- postcss-loader, and then run the- initcommand to generate both- tailwind.config.jsand- postcss.config.js.Terminal- npm install -D tailwindcss postcss postcss-loader autoprefixernpx tailwindcss init -p
- Enable PostCSS support- In your - ember-cli-build.jsfile, configure PostCSS to process your CSS files.ember-cli-build.js- 'use strict'; const EmberApp = require('ember-cli/lib/broccoli/ember-app'); module.exports = function (defaults) { const app = new EmberApp(defaults, { // Add options here }); const { Webpack } = require('@embroider/webpack'); return require('@embroider/compat').compatBuild(app, Webpack, { skipBabel: [ { package: 'qunit', }, ], packagerOptions: { webpackConfig: { module: { rules: [ { test: /\.css$/i, use: [ { loader: 'postcss-loader', options: { postcssOptions: { config: 'postcss.config.js', }, }, }, ], }, ], }, }, }, }); };
- Configure your template paths- Add the paths to all of your template files in your - tailwind.config.jsfile.tailwind.config.js- /** @type {import('tailwindcss').Config} */ module.exports = { content: ['./app/**/*.{gjs,gts,hbs,html,js,ts}'], theme: { extend: {}, }, plugins: [], };
- Add the Tailwind directives to your CSS- Create a - ./app/app.cssfile and add the- @tailwinddirectives for each of Tailwind's layers.app.css- @tailwind base; @tailwind components; @tailwind utilities;
- Import the CSS file- Import the newly-created - ./app/app.cssfile in your- ./app/app.jsfile.app.js- import Application from '@ember/application'; import Resolver from 'ember-resolver'; import loadInitializers from 'ember-load-initializers'; import config from 'my-project/config/environment'; import 'my-project/app.css'; export default class App extends Application { modulePrefix = config.modulePrefix; podModulePrefix = config.podModulePrefix; Resolver = Resolver; } loadInitializers(App, config.modulePrefix);
- Start your build process- Run your build process with - npm run start.Terminal- npm run start
- Start using Tailwind in your project- Start using Tailwind's utility classes to style your content. application.hbs- {{page-title "MyProject"}} <h1 class="text-3xl font-bold underline"> Hello world! </h1> {{outlet}}

