Workspaces and Rollup

kthjm profile image kthjm ・1 min read

How to resolve modules located in workspaces by rollup.

situation is:
workspace-a and workspace-b that contain modules are set in "workspaces".

// package.json
"private": true,
"workspaces": [
  "workspace-a/*", // workspace-a/[module]/package.json

To resolve the modules, pass the directories to rollup-plugin-node-resolve via customResolveOptions.moduleDirectory.

// rollup.config.js
import Resolve from 'rollup-plugin-node-resolve'

const resolve = Resolve({
  customResolveOptions: {
    moduleDirectory: [ // as array

And it is necessary that [module]'s dirname equals to its "name" in package.json.

There may be the way more smart, this is just a solution.😗


markdown guide