frontend/config/postcss-config/README.md
A shared PostCSS configuration for Coze architecture projects that provides a standardized set of PostCSS plugins for modern CSS preprocessing and Tailwind CSS integration.
@import statements and inline imported files:is() functionality# Install as a workspace dependency
npm install @coze-arch/postcss-config@workspace:*
# Update rush dependencies
rush update
Create a postcss.config.js file in your project root:
module.exports = require('@coze-arch/postcss-config');
Or extend the configuration:
const baseConfig = require('@coze-arch/postcss-config');
module.exports = {
...baseConfig,
plugins: {
...baseConfig.plugins,
// Add your custom plugins here
'postcss-custom-plugin': {},
},
};
module.exports = {
module: {
rules: [
{
test: /\.css$/,
use: [
'style-loader',
'css-loader',
'postcss-loader', // Will automatically use postcss.config.js
],
},
],
},
};
// vite.config.js
export default {
css: {
postcss: require('@coze-arch/postcss-config'),
},
};
// rsbuild.config.js
export default {
tools: {
postcss: require('@coze-arch/postcss-config'),
},
};
The package exports a PostCSS configuration object with the following plugins:
{
plugins: {
'postcss-import': {},
'tailwindcss/nesting': 'postcss-nesting',
'tailwindcss': {},
'autoprefixer': {},
'@csstools/postcss-is-pseudo-class': {},
}
}
@import statements and inlines imported CSS filespostcss-nesting as the nesting implementationtailwind.config.js):is() pseudo-class for better browser supportconst baseConfig = require('@coze-arch/postcss-config');
module.exports = {
...baseConfig,
plugins: {
...baseConfig.plugins,
'postcss-custom-properties': {
preserve: false,
},
'cssnano': {
preset: 'default',
},
},
};
const baseConfig = require('@coze-arch/postcss-config');
module.exports = {
plugins: {
'postcss-import': baseConfig.plugins['postcss-import'],
'custom-plugin': {},
'tailwindcss/nesting': baseConfig.plugins['tailwindcss/nesting'],
'tailwindcss': baseConfig.plugins['tailwindcss'],
'autoprefixer': baseConfig.plugins['autoprefixer'],
'@csstools/postcss-is-pseudo-class': baseConfig.plugins['@csstools/postcss-is-pseudo-class'],
},
};
config/postcss-config/
├── src/
│ └── index.js # Main configuration export
├── package.json # Package configuration
├── eslint.config.js # ESLint configuration
├── tsconfig.*.json # TypeScript configurations
└── README.md # This file
# Lint the code
rush lint
# Run all checks
rush build
Internal use within Coze architecture projects.