Skip to main content

@rx-angular/cdk

@rx-angular/cdk is a Component Development Kit, a helper layer of low-level, tree-shakable utilities for building ergonomic, high-performance Angular directives, components, services, and large-scale applications. It is not a journey of its own: the CDK is the substrate the RxAngular directives and state container are built on, and most of its value surfaces where you meet it: in the Template journey (rendering and scheduling) and the State journey (immutable state transformations).

You reach for the CDK directly when you need one of its building blocks: a concurrent, priority-based renderer, immutable array/object update helpers, reactive-input coercion, stream-level notification materialization, or an app-wide hydration signal.

Install

npm install @rx-angular/cdk

Requires Angular ^21.0.0 (RxAngular ^21). The CDK targets the modern baseline: standalone, inject(), signals, and native control flow (@if/@for/@switch).

Entry points

The CDK ships as a set of independently importable secondary entry points, so you pull in only what you use:

Entry pointWhat it providesWhere it surfaces
@rx-angular/cdk/render-strategiesThe render-strategy system and the RxStrategyProvider: concurrent, priority-based scheduling of change detection.Template journey (rendering & scheduling)
@rx-angular/cdk/transformationsPure, immutable array/object update helpers (insert, remove, update, upsert, toDictionary, patch, setProp, deleteProp, slice, toggle, …).State journey (immutable updates)
@rx-angular/cdk/coercingReactive-input coercion: turn Observables or static values into a single Observable input stream.CDK reference / how-to
@rx-angular/cdk/notificationsRxNotification, rxMaterialize, and toRx*Notification: stream-level materialization of the reactive context (suspense / next / error / complete).CDK reference
@rx-angular/cdk/ssrHydrationTracker / provideHydrationTracker: an app-wide "fully hydrated" signal for SSR apps.CDK reference / how-to
@rx-angular/cdk/coalescingThe coalesceWith RxJS operator for coalescing work over a duration selector.Legacy · Zone.js shelf
@rx-angular/cdk/zone-configurationsZone.js flag configuration helpers.Legacy · Zone.js shelf
@rx-angular/cdk/zone-less/browserZone-unpatched browser APIs: cancelAnimationFrame, clearInterval, clearTimeout, Promise, requestAnimationFrame, setInterval, setTimeout, unpatchAddEventListener.Legacy · Zone.js shelf
@rx-angular/cdk/internals/coreLow-level internals, including getZoneUnPatchedApi.Internals
@rx-angular/cdk/internals/schedulerThe concurrent scheduler powering the render strategies.Internals
@rx-angular/cdk/templateEmbeddedView management primitives underpinning the template directives.Internals

Where to go next

Zone.js history

Older CDK material was framed around Zone.js: configuring zone flags, running zone-less, and coalescing zone-triggered change detection. Since Angular v21 change detection is zoneless by default and Zone.js is dropped from the default bundle, so that guidance now lives on the Legacy · Zone.js shelf for apps still running Zone.js. Only the bare @rx-angular/cdk/zone-less entry point was dropped (rx#1355) and is not a current path; the @rx-angular/cdk/zone-less/browser sub-entry still ships for apps that need zone-unpatched browser globals directly. To reach a zone-unpatched API generically, use getZoneUnPatchedApi from @rx-angular/cdk/internals/core.