Skip to content

Vite Plugin

vite-plugin-galeforcecss integrates GaleforceCSS into Vite's dev server and build pipeline.

Installation

bash
npm install -D vite-plugin-galeforcecss

Configuration

js
// vite.config.js
import { defineConfig } from 'vite'
import galeforcecss from 'vite-plugin-galeforcecss'

export default defineConfig({
  plugins: [
    galeforcecss({
      config: 'tailwind.config.js',
      content: ['src'],
    }),
  ],
})

Options

OptionTypeDefaultDescription
inputstring'src/index.css'CSS entry for virtual-module mode.
configstringautotailwind.config.{js,cjs,mjs,ts}.
contentstring[]from configScan roots. Re-scanned on change.
minifybooleanfrom ViteDefaults to build.cssMinify.
sourceMapbooleanfrom ViteDefaults to build.sourcemap.
targetsobjectnoneLightning CSS browser targets.
virtualIdstring'virtual:galeforcecss.css'Virtual module name.

Drop-in vs virtual-module mode

Drop-in (default). Acts as a PostCSS plugin inside Vite's CSS pipeline. Your existing @tailwind directives in any .css / .scss / .sass / .less file are processed transparently. No app-side changes.

Virtual-module. Set input and import the virtual module in your entry:

js
import 'virtual:galeforcecss.css'

Use this when you want a single plugin-owned stylesheet.

HMR behaviour

ChangeWhat happens
Content fileSingle-file scan → candidate diff → selective recompile → reload if CSS changed.
@tailwind / @layer entryFull recompile → reload if CSS changed.
tailwind.config.jsConfig cache cleared → full recompile → reload if CSS changed.
No-op editNo recompile, no reload.

Vite versions

5.x, 6.x, 7.x, 8.x. Uses server.hot.send with server.ws.send fallback.

Released under the MIT License.