Skip to main content

Welcome to walkerOS

walkerOS is an event data collection as code solution. It captures, structures, and routes events with built-in support for consent management — all directly in your code. No fragile UI configs. No black-box logic. Just vendor-agnostic tracking you can version, test, and trust.

The project started as the web tracking library walker.js, and has evolved into a complete first-party tracking system for modern teams and the modern web.

Why walkerOS?

  • Independence: Make your your data collection independent from single vendor specifications to reduce complexity and extra code whenever you add or remove a new service. Keep maintenance effort to a minimum.
  • Scalability: DOM-based, component-level frontend tagging makes tracking user behavior declarative, reusable, and easy to maintain.
  • Privacy-first approach: Built-in consent handling and privacy controls help you meet compliance from day one.
  • Type-safe tracking: Built with TypeScript to catch tracking errors at compile time, not in production. Get IDE autocomplete for APIs and destination configs, prevent data structure mistakes.

How it works

event flow

How to install

Install the package from npm:

npm install @walkeros/collector @walkeros/web-source-browser

Initialize walkerOS in your project. See the quickstart guides for more details.

import type { Collector, WalkerOS } from '@walkeros/core';
import { createCollector } from '@walkeros/collector';
import { createSource } from '@walkeros/core';
import { sourceBrowser } from '@walkeros/web-source-browser';

declare global {
interface Window {
elb: WalkerOS.Elb;
walker: Collector.Instance;
}
}

// Initialize walkerOS
export async function initializeWalker(): Promise<void> {
// Create and start collector
const { collector } = await createCollector({
sources: {
browser: createSource(sourceBrowser, {
settings: {
pageview: true,
session: true,
elb: 'elb', // Browser source will set window.elb automatically
},
}),
},
destinations: {
console: {
push: (event) => console.log('Event:', event),
},
},
});
}
note

See the quickstart guides for more details.

💡 Need Professional Support?
Need professional support with your walkerOS implementation? Check out our services.