# System map — rollup/rollup

> Canonical page: https://codevetter.com/unpack/rollup/system-map

# System map — rollup/rollup

Scanned commit a77225f4b9ef88f20d26a32a3dc70954241f3fb6 (2026-10-02). Generated by codevetter codevetter 1.15.0 on 2026-10-02.

Source inspection; upstream code and tests were not executed.

Rollup exposes a Node API, a CLI, and a browser API around the same bundling core. Graph owns build state, while Bundle owns one output generation. Parsing and hashing cross a Rust boundary with separate native and WASM adapters. Distribution consists of npm artifacts and platform binaries rather than a running service.
- The Node entry exports VERSION, rollup, defineConfig, and watch; the browser entry exports the first three and omits watch. — [src/node-entry.ts#L1-5](https://github.com/rollup/rollup/blob/a77225f4b9ef88f20d26a32a3dc70954241f3fb6/src/node-entry.ts#L1-L5) [src/browser-entry.ts#L1-4](https://github.com/rollup/rollup/blob/a77225f4b9ef88f20d26a32a3dc70954241f3fb6/src/browser-entry.ts#L1-L4)
- cli/cli.ts parses argv with yargs-parser and commandAliases, handles help/version, and delegates other invocations to run. — [cli/cli.ts#L4-28](https://github.com/rollup/rollup/blob/a77225f4b9ef88f20d26a32a3dc70954241f3fb6/cli/cli.ts#L4-L28)
- Graph constructs PluginDriver, ModuleLoader, and a maxParallelFileOps queue; its modulesById map holds internal and external modules. — [src/Graph.ts#L65-76](https://github.com/rollup/rollup/blob/a77225f4b9ef88f20d26a32a3dc70954241f3fb6/src/Graph.ts#L65-L76) [src/Graph.ts#L108-111](https://github.com/rollup/rollup/blob/a77225f4b9ef88f20d26a32a3dc70954241f3fb6/src/Graph.ts#L108-L111)
- Each generate/write invocation creates a new Bundle around the existing Graph, allowing output generation without rebuilding the input graph. — [src/rollup/rollup.ts#L122-134](https://github.com/rollup/rollup/blob/a77225f4b9ef88f20d26a32a3dc70954241f3fb6/src/rollup/rollup.ts#L122-L134) [src/rollup/rollup.ts#L193-212](https://github.com/rollup/rollup/blob/a77225f4b9ef88f20d26a32a3dc70954241f3fb6/src/rollup/rollup.ts#L193-L212)
- Rust's parse_ast crate uses SWC parsing and AstConverter; NAPI and wasm-bindgen expose parser and xxhash operations to JavaScript. — [rust/parse_ast/src/lib.rs#L20-55](https://github.com/rollup/rollup/blob/a77225f4b9ef88f20d26a32a3dc70954241f3fb6/rust/parse_ast/src/lib.rs#L20-L55) [rust/bindings_napi/src/lib.rs#L40-79](https://github.com/rollup/rollup/blob/a77225f4b9ef88f20d26a32a3dc70954241f3fb6/rust/bindings_napi/src/lib.rs#L40-L79) [rust/bindings_wasm/src/lib.rs#L5-26](https://github.com/rollup/rollup/blob/a77225f4b9ef88f20d26a32a3dc70954241f3fb6/rust/bindings_wasm/src/lib.rs#L5-L26)
- native.js selects a platform/architecture package, distinguishes musl where supported, and loads a local .node binary or @rollup/rollup-${packageBase}. — [native.js#L99-144](https://github.com/rollup/rollup/blob/a77225f4b9ef88f20d26a32a3dc70954241f3fb6/native.js#L99-L144)
- rollup.config.ts produces CommonJS and ESM Node artifacts plus UMD and ESM browser artifacts; configTest selects only CommonJS and configIsBuildNode selects both Node builds. — [rollup.config.ts#L63-120](https://github.com/rollup/rollup/blob/a77225f4b9ef88f20d26a32a3dc70954241f3fb6/rollup.config.ts#L63-L120) [rollup.config.ts#L126-162](https://github.com/rollup/rollup/blob/a77225f4b9ef88f20d26a32a3dc70954241f3fb6/rollup.config.ts#L126-L162)
- npm run build combines WASM, generated AST converters, release NAPI, JavaScript, and native copying; CI publication depends on lint/tests and gates on v4 refs plus release-shaped commit messages. — [package.json#L42-59](https://github.com/rollup/rollup/blob/a77225f4b9ef88f20d26a32a3dc70954241f3fb6/package.json#L42-L59) [.github/workflows/build-and-tests.yml#L618-660](https://github.com/rollup/rollup/blob/a77225f4b9ef88f20d26a32a3dc70954241f3fb6/.github/workflows/build-and-tests.yml#L618-L660)

Every claim links to its cited files at the pinned commit. Citations identify source evidence; they do not establish runtime correctness. Independent CodeVetter scan — not reviewed by upstream maintainers.

## Public product links

- [CodeVetter](https://codevetter.com/)
- [Download](https://codevetter.com/download)
- [Documentation](https://codevetter.com/docs/)
- [Source](https://github.com/Codevetter/codevetter)
