meow bundle rolls a module graph into output chunks using Rolldown — the
Rust bundler built on the same Oxc generation meow uses everywhere — driven through
meow’s own resolver.
| Argument | Meaning |
|---|---|
<entries…> | One or more entry modules (required). |
--out, -o | Output directory. Defaults to ./dist. |
Resolution is shared
This is the important part: the bundler does not use a separate Node resolution algorithm. Rolldown resolves through meow’s resolver, which means:- It sees the exact same content-addressed package graph the runtime sees.
- Phantom dependencies — packages you import but never declared — are locked out, because the resolver only knows what’s in your graph.
- TypeScript and the
.js→.tsfallback behave identically to runtime resolution.
Because Rolldown and meow share one Oxc generation, there’s never a second,
divergent parser in the build. The code you run and the code you bundle are
understood by the same engine.
When to use it
meow bundle produces single-file ESM artifacts — ideal for shipping a library, a
serverless function, or a CLI as one file. For application dev servers (HMR, route
splitting), use your framework’s dev server via meow dev; meow bundle is the
low-level “collapse this graph into a file” primitive.
Test next
The isolate-backed, deterministic test runner.