{"id":24940,"library":"atomizer-plugins","title":"atomizer-plugins","description":"A set of plugins for esbuild, Rollup, Vite, and Webpack that integrate Atomizer, an atomic CSS generator. Current stable version is 1.2.1. The library uses the unplugin system for unified plugin API across all build tools. Released under the MIT license. Key differentiator: single API for multiple bundlers, TypeScript definitions included. Release cadence is irregular; latest version published 6 months ago.","status":"active","version":"1.2.1","language":"javascript","source_language":"en","source_url":"git://github.com/acss-io/atomizer","tags":["javascript","atomizer","plugin","rollup","rollup-plugin","unplugin","vite","vite-plugin","webpack","typescript"],"install":[{"cmd":"npm install atomizer-plugins","lang":"bash","label":"npm"},{"cmd":"yarn add atomizer-plugins","lang":"bash","label":"yarn"},{"cmd":"pnpm add atomizer-plugins","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"unplugin provides the unified plugin system for esbuild, Rollup, Vite, and Webpack","package":"unplugin","optional":false},{"reason":"Core Atomizer library for generating atomic CSS","package":"atomizer","optional":false}],"imports":[{"note":"ESM-only package; named export matches build tool name. Cannot use default import.","wrong":"const esbuild = require('atomizer-plugins').esbuild","symbol":"esbuild","correct":"import { esbuild } from 'atomizer-plugins'"},{"note":"Export name is 'rollup', not 'atomizer'. CJS require works but named export is correct.","wrong":"const { atomizer } = require('atomizer-plugins')","symbol":"rollup","correct":"import { rollup } from 'atomizer-plugins'"},{"note":"Named export, not default. Provides explicit TypeScript types when imported this way.","wrong":"import vite from 'atomizer-plugins'","symbol":"vite","correct":"import { vite } from 'atomizer-plugins'"},{"note":"Export name is exactly 'webpack'. There is no alternative naming like 'atomizerWebpack'.","wrong":"import { atomizerWebpack } from 'atomizer-plugins'","symbol":"webpack","correct":"import { webpack } from 'atomizer-plugins'"}],"quickstart":{"code":"// vite.config.ts\nimport { defineConfig } from 'vite';\nimport { vite as atomizer } from 'atomizer-plugins';\n\nexport default defineConfig({\n  plugins: [\n    atomizer({\n      config: {\n        rules: [\n          { '.D(b)': { display: 'block' } },\n          { '.C(#fff)': { color: '#fff' } },\n        ],\n      },\n    }),\n  ],\n});","lang":"typescript","description":"Shows how to configure the Vite plugin with Atomizer rules for atomic CSS classes."},"warnings":[{"fix":"Ensure unplugin is pinned to compatible version (^0.x) or upgrade atomizer-plugins when v2 is released.","message":"Package version 1.x uses unplugin v0.x; unplugin v1.x changed plugin API (object vs function)","severity":"breaking","affected_versions":">=1.0.0 <2.0.0"},{"fix":"Ensure atomizer-plugins is the last plugin in the array.","message":"Plugin must be placed after JS/TS processing plugins (e.g., react) to generate correct atomic classes","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Use dynamic import: const { rollup } = await import('atomizer-plugins'); or set project to type: 'module'.","message":"ESM-only package; using require() in CommonJS context works only if package is imported after Node's ESM resolution","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Provide config object directly, not a path string. Use require() or import as shown in docs.","message":"deprecated: The 'config' option does not accept a file path string; must pass an object","severity":"deprecated","affected_versions":">=1.0.0"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Run 'npm install atomizer-plugins' and ensure package is present.","cause":"Package not installed or not in node_modules","error":"Error: Cannot find module 'atomizer-plugins'"},{"fix":"Use 'import { rollup } from 'atomizer-plugins';' instead of 'import atomizer from 'atomizer-plugins';'","cause":"Default import used instead of named import","error":"SyntaxError: The requested module 'atomizer-plugins' does not provide an export named 'default'"},{"fix":"Pin unplugin to version ^0.x in your project's package.json.","cause":"Conflicting unplugin versions","error":"Error: Plugin 'atomizer-plugins' is using unplugin v0.x which is not compatible with unplugin v1.x"},{"fix":"Ensure you import the correct named export (e.g., { vite } ) and call it as a function inside plugins array.","cause":"Wrong import or incorrect usage of plugin","error":"TypeError: atomizer is not a function"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}