Integrating With Laravel Next.js in TailwindCSS
Integrating Tailwind CSS with Laravel and Next.js
1. Integrating Tailwind CSS with Laravel
Laravel has built-in tooling (Laravel Mix) that works well with Tailwind CSS.
Steps:
Install Tailwind via npm
npm install -D tailwindcss postcss autoprefixernpx tailwindcss initConfigure
tailwind.config.js
Make sure to specify the paths Laravel uses for views and Blade files:
module.exports = { content: [ './resources/**/*.blade.php', './resources/**/*.js', './resources/**/*.vue', ], theme: { extend: {} }, plugins: [],}Set up Tailwind CSS in your CSS
Create a CSS file (e.g., resources/css/app.css) with:
@tailwind base;@tailwind components;@tailwind utilities;Configure Laravel Mix (in
webpack.mix.js)
const mix = require('laravel-mix');mix.js('resources/js/app.js', 'public/js') .postCss('resources/css/app.css', 'public/css', [ require('tailwindcss'), ]);Compile assets
npm run devInclude the compiled CSS in your Blade templates
<link href="{{ asset('css/app.css') }}" rel="stylesheet">2. Integrating Tailwind CSS with Next.js
Next.js supports Tailwind CSS out of the box with PostCSS.
Steps:
Create a Next.js app (if not done yet):
npx create-next-app my-appcd my-appInstall Tailwind CSS and dependencies
npm install -D tailwindcss postcss autoprefixernpx tailwindcss init -pConfigure
tailwind.config.js
Set content to include Next.js pages and components:
module.exports = { content: [ './pages/**/*.{js,ts,jsx,tsx}', './components/**/*.{js,ts,jsx,tsx}', ], theme: { extend: {} }, plugins: [],}Add Tailwind directives to globals CSS
In styles/globals.css, add:
@tailwind base;@tailwind components;@tailwind utilities;Import globals CSS in
_app.js
// pages/_app.jsimport '../styles/globals.css'function MyApp({ Component, pageProps }) { return <Component {...pageProps} />}export default MyAppUse Tailwind classes in your components
export default function Home() { return ( <div className="flex justify-center items-center h-screen bg-gray-100"> <h1 className="text-4xl font-bold text-blue-600">Hello, Tailwind CSS with Next.js!</h1> </div> )}Summary
| Framework | Key Points |
|---|---|
| Laravel | Use Laravel Mix with PostCSS, configure paths in tailwind.config.js for Blade and Vue files. |
| Next.js | Configure content paths, add Tailwind CSS to global styles, import in _app.js. |
Want me to provide a ready-to-use starter config or example project for either?