Skip to content

Fix a PostCSS Webpack error ruleSet rules oneOf... etc etc

New Course Coming Soon:

Get Really Good at Git

How to fix the error `ruleSet[1].rules[3].oneOf[8].use[2]!./styles/globals.css cannot find module`

Some students of my Bootcamp had a problem that I couldn’t replicate in any way.

Upon running npm run dev in a Next.js project, they had this error:

➜  rest-api git:(main) npm run dev

> [email protected] dev
> next dev

ready - started server on 0.0.0.0:3000, url: http://localhost:3000
info  - Loaded env from /Users/flaviocopes/dev/bootcamp/rest-api/.env
wait  - compiling...
error - ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[3].oneOf[8].use[1]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[3].oneOf[8].use[2]!./styles/globals.css
Error: Cannot find module 'tailwindcss'

In the last line tailwindcss appears but also autoprefixer happened.

Or, this error too: Error: Your custom PostCSS configuration must export a plugins key.

Not a very helpful error!

After much debugging, the cause of the problem was discovered.

The project where the error appeared didn’t have Tailwind CSS installed, but during the weeks before, we used Tailwind.

What happened was this.

They had a postcss.config.js file in the parent folder. Or in another parent folder in their path, not just the direct parent. Maybe their home folder.

Something like this:

module.exports = {
  plugins: {
    autoprefixer: {},
  },
}

Important: in the project that they’re now, there’s no PostCSS configured.

If you have PostCSS installed, there’s no problem. Only if you don’t have postcss.config.js in your current project root folder.

But the tooling of Next.js sees there’s a postcss.config.js file in the parent folder, and executes it.

Raising this error:

error - ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[3].oneOf[8].use[1]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[3].oneOf[8].use[2]!./styles/globals.css
Are you intimidated by Git? Can’t figure out merge vs rebase? Are you afraid of screwing up something any time you have to do something in Git? Do you rely on ChatGPT or random people’s answer on StackOverflow to fix your problems? Your coworkers are tired of explaining Git to you all the time? Git is something we all need to use, but few of us really master it. I created this course to improve your Git (and GitHub) knowledge at a radical level. A course that helps you feel less frustrated with Git. Launching Summer 2024. Join the waiting list!

Here is how can I help you: