# @gem-mine/rollup-plugin-rename-node-modules

> A Rollup plugin to rename the `node_modules` created when bundling some external libries while using preserveModules

Latest version **1.0.1** (published 2021-03-15) · MIT license · 0 weekly downloads

## Install

```sh
npm install @gem-mine/rollup-plugin-rename-node-modules
pnpm add @gem-mine/rollup-plugin-rename-node-modules
yarn add @gem-mine/rollup-plugin-rename-node-modules
bun add @gem-mine/rollup-plugin-rename-node-modules
```

## Health

**Score 25/100 (F)** — status: abandoned.

Positive: has types; esm support; no vulnerabilities.

Warnings: low downloads.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.0.1 |
| Published | 2021-03-15 |
| First published | 2021-03-15 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | ESM + CommonJS |
| Dependencies | 2 |
| Unpacked size | 10.6 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 23 |
| Author | Lazyuki |
| Maintainers | caolvchong, wengzp, guoyh, mraiguo, amazebird, githoniel, janya, gylllll |
| Keywords | rollup, plugin, rollup-plugin, node_modules, rename |

## Links

- npm: https://www.npmjs.com/package/@gem-mine/rollup-plugin-rename-node-modules
- Repository: https://github.com/Lazyuki/rollup-plugin-rename-node-modules
- Homepage: https://github.com/Lazyuki/rollup-plugin-rename-node-modules#readme
- Issues: https://github.com/Lazyuki/rollup-plugin-rename-node-modules/issues
- npm.io page: https://npm.io/package/@gem-mine/rollup-plugin-rename-node-modules

## Dependencies (2)

- [magic-string](https://npm.io/package/magic-string.md) ^0.25.7
- [estree-walker](https://npm.io/package/estree-walker.md) ^2.0.1

## Alternatives

- [raw-loader](https://npm.io/package/raw-loader.md) — 4.3M weekly downloads
- [plop](https://npm.io/package/plop.md) — 1.4M weekly downloads
- [webpack-deadcode-plugin](https://npm.io/package/webpack-deadcode-plugin.md) — 80.3K weekly downloads
- [@storybook/preact-vite](https://npm.io/package/@storybook/preact-vite.md) — 54.2K weekly downloads
- [vite-plugin-transform](https://npm.io/package/vite-plugin-transform.md) — 2.4K weekly downloads

## Recent versions

- 1.0.1 (latest) — 2021-03-15

## README

# rollup-plugin-rename-node-modules

🍣 A Rollup plugin to rename the `node_modules` created when bundling some external libries while using `preserveModules`

#### Why?

When you enable `preserveModules` but also want to bundle some stuff from dependencies (in my case it was `css` files so that `Next.js` can use my library),
`rollup` will put the files under `node_modules` folder under your output dir. This works locally just fine, but if you try to `npm publish` this output dir,
`npm` will automatically ignore `node_modules` inside the output dir so your package will not work when distributed through `npm`. I don't know if this is
a bug or a desired behavior, but this plugin fixes this by renaming the `node_modules` folder to something else and also check each file and rename any
relative imports pointing to this `node_modules` to the corrected path.

## Requirements

This plugin requires an [LTS](https://github.com/nodejs/Release) Node version (v8.0.0+) and Rollup

## Install

Using npm:

```bash
npm install rollup-plugin-rename-node-modules --save-dev
```

## Usage

Create a `rollup.config.js` [configuration file](https://www.rollupjs.org/guide/en/#configuration-files) and import the plugin:

```js
import renameNodeModules from "rollup-plugin-rename-node-modules";

export default {
  input: "src/index.js",
  output: {
    dir: "output",
    format: "cjs",
  },
  plugins: [renameNodeModules("ext")],
};
```

It takes a string and will rename files and mentions of `node_module` to the provided string. By default it's `external`.

### Credit

Base idea taken from https://github.com/GiG/rollup-plugin-rename-extensions

---
_Source: https://npm.io/package/@gem-mine/rollup-plugin-rename-node-modules · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
