Skip to content

Commit f28e1d1

Browse files
authored
postcss-debug-logger (#950)
1 parent addcd63 commit f28e1d1

23 files changed

+792
-0
lines changed

.github/labeler.yml

+1
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
- packages/postcss-tape/**
1212
- packages/selector-specificity/**
1313
- plugins/postcss-base-plugin/**
14+
- plugins/postcss-debug-logger/**
1415
- rollup/**
1516

1617
"plugin-packs/postcss-preset-env":

package-lock.json

+29
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

+1
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
"packages/media-query-list-parser",
1919
"packages/*",
2020
"plugins/postcss-progressive-custom-properties",
21+
"plugins/postcss-debug-logger",
2122
"plugins/*",
2223
"plugin-packs/*",
2324
"cli/*",
+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
node_modules
2+
package-lock.json
3+
yarn.lock
4+
*.result.css
5+
*.result.css.map
6+
*.result.html

plugins/postcss-debug-logger/.nvmrc

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
v18.8.0
+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import { postcssTape } from '@csstools/postcss-tape';
2+
import plugin from '@csstools/postcss-debug-logger';
3+
4+
postcssTape(plugin)({
5+
basic: {
6+
message: "supports basic usage",
7+
options: {}
8+
},
9+
document: {
10+
postcssSyntaxHTML: true,
11+
message: "supports document usage",
12+
},
13+
});
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# Changes to PostCSS Debug Logger
2+
3+
### Unreleased (major)
4+
5+
- Initial version
+235
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,235 @@
1+
# Installing PostCSS Debug Logger
2+
3+
[PostCSS Debug Logger] runs in all Node environments, with special instructions for:
4+
5+
- [Node](#node)
6+
- [PostCSS CLI](#postcss-cli)
7+
- [PostCSS Load Config](#postcss-load-config)
8+
- [Webpack](#webpack)
9+
- [Next.js](#nextjs)
10+
- [Gulp](#gulp)
11+
- [Grunt](#grunt)
12+
13+
14+
15+
## Node
16+
17+
Add [PostCSS Debug Logger] to your project:
18+
19+
```bash
20+
npm install postcss @csstools/postcss-debug-logger --save-dev
21+
```
22+
23+
Use it as a [PostCSS] plugin:
24+
25+
```js
26+
// commonjs
27+
const postcss = require('postcss');
28+
const postcssDebugLogger = require('@csstools/postcss-debug-logger');
29+
30+
postcss([
31+
postcssDebugLogger(/* pluginOptions */)
32+
]).process(YOUR_CSS /*, processOptions */);
33+
```
34+
35+
```js
36+
// esm
37+
import postcss from 'postcss';
38+
import postcssDebugLogger from '@csstools/postcss-debug-logger';
39+
40+
postcss([
41+
postcssDebugLogger(/* pluginOptions */)
42+
]).process(YOUR_CSS /*, processOptions */);
43+
```
44+
45+
## PostCSS CLI
46+
47+
Add [PostCSS CLI] to your project:
48+
49+
```bash
50+
npm install postcss-cli @csstools/postcss-debug-logger --save-dev
51+
```
52+
53+
Use [PostCSS Debug Logger] in your `postcss.config.js` configuration file:
54+
55+
```js
56+
const postcssDebugLogger = require('@csstools/postcss-debug-logger');
57+
58+
module.exports = {
59+
plugins: [
60+
postcssDebugLogger(/* pluginOptions */)
61+
]
62+
}
63+
```
64+
65+
## PostCSS Load Config
66+
67+
If your framework/CLI supports [`postcss-load-config`](https://github.com/postcss/postcss-load-config).
68+
69+
```bash
70+
npm install @csstools/postcss-debug-logger --save-dev
71+
```
72+
73+
`package.json`:
74+
75+
```json
76+
{
77+
"postcss": {
78+
"plugins": {
79+
"@csstools/postcss-debug-logger": {}
80+
}
81+
}
82+
}
83+
```
84+
85+
`.postcssrc.json`:
86+
87+
```json
88+
{
89+
"plugins": {
90+
"@csstools/postcss-debug-logger": {}
91+
}
92+
}
93+
```
94+
95+
_See the [README of `postcss-load-config`](https://github.com/postcss/postcss-load-config#usage) for more usage options._
96+
97+
## Webpack
98+
99+
_Webpack version 5_
100+
101+
Add [PostCSS Loader] to your project:
102+
103+
```bash
104+
npm install postcss-loader @csstools/postcss-debug-logger --save-dev
105+
```
106+
107+
Use [PostCSS Debug Logger] in your Webpack configuration:
108+
109+
```js
110+
module.exports = {
111+
module: {
112+
rules: [
113+
{
114+
test: /\.css$/i,
115+
use: [
116+
"style-loader",
117+
{
118+
loader: "css-loader",
119+
options: { importLoaders: 1 },
120+
},
121+
{
122+
loader: "postcss-loader",
123+
options: {
124+
postcssOptions: {
125+
plugins: [
126+
// Other plugins,
127+
[
128+
"@csstools/postcss-debug-logger",
129+
{
130+
// Options
131+
},
132+
],
133+
],
134+
},
135+
},
136+
},
137+
],
138+
},
139+
],
140+
},
141+
};
142+
```
143+
144+
## Next.js
145+
146+
Read the instructions on how to [customize the PostCSS configuration in Next.js](https://nextjs.org/docs/advanced-features/customizing-postcss-config)
147+
148+
```bash
149+
npm install @csstools/postcss-debug-logger --save-dev
150+
```
151+
152+
Use [PostCSS Debug Logger] in your `postcss.config.json` file:
153+
154+
```json
155+
{
156+
"plugins": [
157+
"@csstools/postcss-debug-logger"
158+
]
159+
}
160+
```
161+
162+
```json5
163+
{
164+
"plugins": [
165+
[
166+
"@csstools/postcss-debug-logger",
167+
{
168+
// Optionally add plugin options
169+
}
170+
]
171+
]
172+
}
173+
```
174+
175+
## Gulp
176+
177+
Add [Gulp PostCSS] to your project:
178+
179+
```bash
180+
npm install gulp-postcss @csstools/postcss-debug-logger --save-dev
181+
```
182+
183+
Use [PostCSS Debug Logger] in your Gulpfile:
184+
185+
```js
186+
const postcss = require('gulp-postcss');
187+
const postcssDebugLogger = require('@csstools/postcss-debug-logger');
188+
189+
gulp.task('css', function () {
190+
var plugins = [
191+
postcssDebugLogger(/* pluginOptions */)
192+
];
193+
194+
return gulp.src('./src/*.css')
195+
.pipe(postcss(plugins))
196+
.pipe(gulp.dest('.'));
197+
});
198+
```
199+
200+
## Grunt
201+
202+
Add [Grunt PostCSS] to your project:
203+
204+
```bash
205+
npm install grunt-postcss @csstools/postcss-debug-logger --save-dev
206+
```
207+
208+
Use [PostCSS Debug Logger] in your Gruntfile:
209+
210+
```js
211+
const postcssDebugLogger = require('@csstools/postcss-debug-logger');
212+
213+
grunt.loadNpmTasks('grunt-postcss');
214+
215+
grunt.initConfig({
216+
postcss: {
217+
options: {
218+
processors: [
219+
postcssDebugLogger(/* pluginOptions */)
220+
]
221+
},
222+
dist: {
223+
src: '*.css'
224+
}
225+
}
226+
});
227+
```
228+
229+
[Gulp PostCSS]: https://github.com/postcss/gulp-postcss
230+
[Grunt PostCSS]: https://github.com/nDmitry/grunt-postcss
231+
[PostCSS]: https://github.com/postcss/postcss
232+
[PostCSS CLI]: https://github.com/postcss/postcss-cli
233+
[PostCSS Loader]: https://github.com/postcss/postcss-loader
234+
[PostCSS Debug Logger]: https://github.com/csstools/postcss-plugins/tree/main/plugins/postcss-debug-logger
235+
[Next.js]: https://nextjs.org

0 commit comments

Comments
 (0)