summaryrefslogtreecommitdiffstats
path: root/postcss.config.js
diff options
context:
space:
mode:
Diffstat (limited to 'postcss.config.js')
-rw-r--r--postcss.config.js37
1 files changed, 37 insertions, 0 deletions
diff --git a/postcss.config.js b/postcss.config.js
new file mode 100644
index 0000000..eefa272
--- /dev/null
+++ b/postcss.config.js
@@ -0,0 +1,37 @@
+const purgecss = require('@fullhuman/postcss-purgecss')({
+ content: ['./hugo_stats.json'],
+ defaultExtractor: content => {
+ let els = JSON.parse(content).htmlElements;
+ return els.tags.concat(els.classes, els.ids);
+ },
+});
+
+module.exports = {
+ plugins: [
+ require('postcss-import'),
+ require('autoprefixer'),
+ require('postcss-scss')({
+ parser: require('postcss-scss').parse,
+ includePaths: ['node_modules'],
+ }),
+ require('postcss-node-sass')({
+ includePaths: ['node_modules'],
+ }),
+ ...(process.env.HUGO_ENVIRONMENT === 'production' ? [purgecss] : []),
+ require('@fullhuman/postcss-purgecss')({
+ content: ['layouts/**/*.html'],
+ whitelist: [
+ 'highlight',
+ 'language-bash',
+ 'pre',
+ 'code',
+ 'content',
+ 'h3',
+ 'h4',
+ 'ul',
+ 'li',
+ ],
+ }),
+ require('cssnano')({ preset: 'default' }),
+ ],
+};