nx-node-tree-shake-graph-plugin
v1.2.2
Published
Nx plugin for narrowing project graph edges using tree-shaking semantics
Downloads
1,043
Maintainers
Readme
@caseware/nx-node-tree-shake
Nx graph plugin that wraps JS/TS dependency extraction and narrows static edges using conservative tree-shaking semantics.
Configure In nx.json
{
"plugins": [
{
"plugin": "@caseware/nx-node-tree-shake",
"options": {
"mode": "semantic",
"respectSideEffects": true,
"removeTypeOnlyEdges": true,
"bundlerAdapters": ["esbuild", "swc", "babel", "webpack", "rollup", "vite"],
"fallbackToStaticGraph": true,
"passthrough": false,
"debug": false
}
}
]
}Detailed option schema is available in packages/src/options.json.
Key Exports
createDependenciescreateNodesV2narrowDependenciesresolveBaseCreateDependencies
Safety Model
- Only removes static edges when imports are provably unused and target declares
"sideEffects": false. - Keeps namespace imports, side-effect imports, dynamic imports, and re-exports.
Local Validation
yarn nx test @caseware/nx-node-tree-shake --skip-nx-cacheyarn nx build @caseware/nx-node-tree-shake --skip-nx-cache
