Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/nonzzz/vite-bundle-analyzer

bundle analyzer for vite
https://github.com/nonzzz/vite-bundle-analyzer

bundle-analyzer rollup-plugin vite-plugin

Last synced: 20 days ago
JSON representation

bundle analyzer for vite

Awesome Lists containing this project

README

        


vite-bundle-analyzer










Awesome

> [!WARNING]
> Vite's enable minify by default.There for you will see that the parsed size is larger than actual size.This is because the bundle info
> provide by rollup isn't compressed.(If you care about this problem you can choose anothr plugins.)

![analyzer](./analyzer.gif)

## Install

```bash
$ yarn add vite-bundle-analyzer -D

# or

$ npm install vite-bundle-analyzer -D
```

## Usage

```js
import { defineConfig } from 'vite'

import { analyzer } from 'vite-bundle-analyzer'

export default defineConfig({
plugins: [
// ...your plugin
analyzer()
]
})

// If you are using it in rollup or others support rollup plugin system you can import 'adapter' from package.
// Then use it with adapter(analyzer())
```

## Options

| params | type | default | description |
| -------------- | ---------------------- | ------------- | -------------------------------------------------------------------------------- |
| `analyzerMode` | `server\|static\|json` | `server` | In `server` will create a static server to preview. |
| `fileName` | `string` | `stats` | The name of the static product.(No suffix name) |
| `reportTitle` | `string` | `plugin name` | Report website title. |
| `gzipOptions` | `Record` | `{}` | Compression options. (Details see `zlib module`) |
| `analyzerPort` | `number\|'auto'` | `8888` | static server port. |
| `openAnalyzer` | `boolean` | `true` | Open the static website. (Only works on `analyzerMode` is `server` or `static` ) |
| `defaultSizes` | `stat\|parsed\|gzip` | `stat` | The default type selected in the client page |
| `summary` | `boolean` | `true` | Show full chunk info to stdout. |

### Sponsors





### Contributions

Contributions are welcome! If you find a bug or want to add a new feature, please open an issue or submit a pull
request.

### Author and contributors



Kanno


Aleksandr Mitskevich


### DEBUG

If you're using vite you can get the logs with `vite build --debug` and then extreact the part relevant to `analyze` plugin. Or using `cross-env` to setup `ANALYZE_DEBUG=true` in your local.
env.

### Why i get the chunk size is empty?

If you're use a plugin that break the `sourcemap` it will affect the analyze plugin. I know it's stupid, But is the way to get the size close to the actual size. Like `@vitejs/plugin-legacy` don't prvide
the correctly sourcemap for legacy chunk. For some reason, no analysis will be provided for those module.

### Why when i specify analyzerMode as static and set openAnalyzer as false don't create a liviing server?

I don't want to add new option to control living server.

### LICENSE

[MIT](./LICENSE)