Client

The core forgekit object is a lightweight wrapper that manages the lifecycle of your event stream.

The TypeScript types are fully inferred; no manual type assertions needed even with complex nested schemas.

stream.pipe(retry( maxAttempts: 3, backoff: 'exponential' ), timeout(30000)).subscribe(console.log);

Each event flows through a series of transformation stages, with built-in support for filtering, mapping, and conditional routing.

Client

Metrics are published to standard formats (Prometheus, CloudWatch, DataDog) with zero configuration.

const throttled = stream.throttle( rps: 100, burst: 200 ); const deduplicated = stream.dedup( key: 'event.id', window: 60000 );

Error handling is explicit: catch failures at any stage, log them, and route bad events to a dead-letter queue without stopping the main pipeline.

See also