An esbuild plugin that allows importing CSS files as JavaScript tagged template literal objects, primarily for use with LitElement and similar libraries. Version 4.1.1 requires esbuild >=0.16.17 || ^0.25.0 and lit ^2.7.2 || ^3.0.0. It supports CSS preprocessing via a transform function, optional cssnano minification, and an inline mode that embeds CSS directly into JS/TS modules (at a performance cost). The plugin is part of the @pwrs/lit-css ecosystem, with parallel packages for rollup, Vite, webpack, TypeScript, and Parcel. Unlike alternatives that require separate build steps, this integrates directly into esbuild's build pipeline, making it seamless for Lit component development. It ships TypeScript types and is actively maintained with regular updates.
npm install esbuild-plugin-lit-cssNo compatibility data collected yet for this library.
Verified import paths — ran on the pinned version, not inferred.
Demonstrates basic setup of esbuild-plugin-lit-css with esbuild, importing CSS as Lit CSSResult.
Update esbuild to >=0.16.17 or use v3.x (if available).
Set specifier: 'lit-element' in options if using older Lit packages.
Avoid inline mode for large projects; use separate modules for better performance.
Use import { litCssPlugin } from 'esbuild-plugin-lit-css' instead.Run npm install --save-dev cssnano.
Change to dynamic import: const { litCssPlugin } = await import('esbuild-plugin-lit-css'); or switch to ESM.Ensure named import: import { litCssPlugin } from 'esbuild-plugin-lit-css'.Run npm install to ensure all dependencies are resolved.