A plugin for esbuild that adds CSS Modules support, enabling local scoping of CSS class names. Current stable version is 0.3.0. The plugin allows developers to import CSS files as JavaScript modules, receiving a mapping of local class names to globally unique names. It supports custom naming patterns via replacement tokens like [local], [hash], and [ext], and can target specific file extensions (default .module.css). Written in TypeScript with bundled types. Release cadence is slow; last update was in 2021. Key differentiator: lightweight integration with esbuild, unlike webpack-based alternatives.
npm install esbuild-plugin-css-modulesNo compatibility data collected yet for this library.
Verified import paths — ran on the pinned version, not inferred.
Bundles a JavaScript entry point, applying CSS Modules to .module.css files with a custom naming pattern.
Use default import pattern: import cssModulesPlugin from 'esbuild-plugin-css-modules'
Ensure options keys match the Options interface exactly.
Set extension option to process CSS files with a different extension, e.g., '.css'
Consider alternative plugins like 'esbuild-plugin-css' or 'esbuild-sass-plugin' for active maintenance.
Install and register the plugin in esbuild plugins array, and ensure filename ends with .module.css (or adjust extension option).
Use `import cssModulesPlugin from 'esbuild-plugin-css-modules'` or `const cssModulesPlugin = require('esbuild-plugin-css-modules')`Run `npm install -D esbuild` to install it alongside the plugin.