Vite/Rollup plugin to detect unused files and unused exports in used files.
This package is a ported version of webpack-deadcode-plugin
.
Important
This plugin cannot check for dependencies of non-script files (for example: CSS), which may be misreported as unused, even if they actually appear in the compiled bundles. Please be careful!
npm install --save-dev vite-plugin-unused-code
// vite.config.js
import unusedCode from 'vite-plugin-unused-code'
export default {
plugins: [
unusedCode({
patterns: ['src/**/*.*'],
}),
],
}
-
Type:
string
-
Default:
process.cwd()
Current working directory where
patterns
andexclude
are located.
-
Type:
string[]
-
Default:
['**/*.*']
The array of
micromatch
patterns to look for unused files and unused export in used files.
-
Type:
string[]
-
Default:
[]
Deprecated. The array of patterns to not look at.
{ exclude: ['foo'] }
is actually equivalent to{ patterns: ['!foo'] }
.This option is reserved only for compatibility with
webpack-deadcode-plugin
.
-
Type:
boolean
-
Default:
true
Whether to run unused files detection or not.
-
Type:
boolean
-
Default:
true
Whether to run unused export detection in used files or not.
-
Type:
'all' | 'used' | 'none'
-
Default:
'all'
Adjust console output verbosity.
'all'
: Show all messages.'used'
: Only show messages when there are either unused files or unused export.'none'
: Won't show unused files or unused export messages in the console. It can keep terminal clean when setexportJSON
totrue
.
-
Type:
boolean | string
-
Default:
false
Whether to export data in JSON format. A
unused-code.json
file will be created in the current directory is specified astrue
. You can also specify a directory to create in it instead.
-
Type:
boolean
-
Default:
false
Whether to interrupt the compilation when unused files or exports detected.