Skip to content

StyleX integration for Vite, esbuild, webpack, rollup and rspack.

License

Notifications You must be signed in to change notification settings

eryue0220/unplugin-stylex

Repository files navigation

unplugin-stylex · GitHub license npm version

Warning

This plugin is in early development and may not work as expected. Please report any issues you find.

Installation

Install the package from the following command

npm install unplugin-stylex --save-dev

or with yarn:

yarn add unplugin-stylex --save-dev

or with pnpm:

pnpm i unplugin-stylex --save-dev

Configuration

Vite
// vite.config.js
import { defineConfig } from 'vite'
import stylexPlugin from 'unplugin-stylex/vite'

export default defineConfig({
  plugins: [
    stylexPlugin({ /* options */}),
  ],
})


esbuild
// esbuild.config.js
import { build } from 'esbuild'
import stylexPlugin from 'unplugin-stylex/esbuild'

export default {
  plugins: [
    stylexPlugin({ /* options */ }),
  ],
}


farm
// farm.config.js
import { defineConfig } from '@farmfe/core'
import stylexPlugin from 'unplugin-stylex/farm'

export default defineConfig({
  // other rollup config
  plugins: [
    stylexPlugin({ /* options */}),
  ],
})


rspack
// rspack.config.js
import stylexPlugin from 'unplugin-stylex/rspack'

module.exports = {
  // other rspack config
  plugins: [
    stylexPlugin({ /* options */}),
  ],
}


rollup
// rollup.config.js
import stylexRollupPlugin from 'unplugin-stylex/rollup'

export default {
  // other rollup config
  plugins: [
    stylexRollupPlugin({ /* options */}),
  ],
}


webpack
// webpack.config.js
import stylexWebpackPlugin from 'unplugin-stylex/webpack'

module.exports = {
  // other webpack config
  plugins: [
    stylexWebpackPlugin({ /* options */}),
  ],
}


Usage

More detail usage can check examples

Options

Current support argument, which may have change in the future

options.dev

options.stylex.runtimeInjection

options.stylex.classNamePrefix

options.stylex.useCSSLayers

options.stylex.babelConfig

options.stylex.stylexImports

options.stylex.unstable_moduleResolution

Acknowledgments