Bundled mode
In Bundled mode, you configure walkerOS with JSON files and build standalone bundles using the CLI. The output is a separate file that can be deployed independently of your application.
Quickstart
1. Install the CLI
2. Create a flow configuration
Create flow.json:
- Web (browser)
- Server (Node.js)
3. Build the bundle
This creates:
- Web:
./dist/walker.js(IIFE format, loadable via script tag) - Server:
./dist/bundle.mjs(ESM format, runnable with Node.js)
4. Deploy
- Web
- Server
Add to your HTML:
<script src="/walker.js"></script>
Run directly:
node ./dist/bundle.mjs
Or with Docker:
walkeros run collect flow.json
Adding destinations
Add destinations to your flow.json:
Rebuild: walkeros bundle flow.json
Adding consent
Add consent requirements in the destination config:
Set consent at runtime:
// After loading walker.js
elb('walker consent', { functional: true, analytics: true });
Key concepts
The package: property
In Bundled mode, you reference packages by name:
"sources": {
"browser": {
"package": "@walkeros/web-source-browser"
}
}
The CLI downloads and bundles the package. This differs from Integrated mode where you use code: with a direct import.
Variables and environment
Use variables for environment-specific values:
Variables are resolved from environment variables at build time.
Multiple flows
Define different flows for different environments:
Build specific flow: walkeros bundle flow.json --flow production
CLI commands
| Command | Purpose |
|---|---|
walkeros bundle | Build production bundle |
walkeros simulate | Test with mocked events |
walkeros push | Test with real API calls |
walkeros run collect | Start HTTP collection server |
walkeros run serve | Serve web bundles |
See CLI documentation for full details.
Docker deployment
For production server deployments:
See Docker documentation for complete deployment guides.
Next steps
- Flow configuration: Full configuration reference
- CLI documentation: All CLI commands and options
- Docker deployment: Production container deployment
- Mapping: Transform events for destinations
See also
- Integrated mode: Build into your app with TypeScript
- Collector reference: Understanding the collector engine