Open-Source Wikis

/

Angular

/

Angular

/

Glossary

angular/angular

Glossary

Vocabulary used throughout the codebase. Many of these terms predate the public-facing Angular documentation and only appear in internal commentary, commit messages, and design docs.

Compilation

  • Ivy — the rendering and compilation pipeline introduced in Angular 9. Replaces View Engine. Implemented in packages/core/src/render3 at runtime and packages/compiler-cli/src/ngtsc at compile time. The legacy "View Engine" compiler has been removed; "Ivy" is mostly a historical name.
  • ngtsc — Angular's TypeScript compiler plugin under packages/compiler-cli/src/ngtsc. Replaces the older ngc. It runs as part of an ordinary tsc invocation and rewrites Angular decorators into Ivy ɵ-prefixed definitions.
  • Annotation handler — a class under ngtsc/annotations/ that recognizes an Angular decorator (e.g., ComponentDecoratorHandler) and produces analysis, resolution, and compilation output.
  • TCB / type check block — a synthetic TypeScript snippet generated by ngtsc/typecheck that encodes a template's binding semantics as expressions tsc can type-check. The output of ngtsc template type checking shows up in TypeScript diagnostics.
  • Linker — the partial-compilation linker in packages/compiler-cli/linker. Libraries on npm are shipped as "partial" Ivy code; the linker finishes compilation in the consumer's bundler step (Babel plugin / Webpack loader).
  • Partial compilation — the intermediate, version-stable Ivy output checked into npm packages so that libraries don't have to re-publish for every framework patch.

Runtime data structures

  • TViewTemplate View. The static, compile-time-derived metadata for a template, shared by every component instance. See packages/core/src/render3/interfaces/view.ts.
  • LViewLogical View. The per-instance, mutable array that holds component context, binding values, child views, and DOM node references. The fundamental unit of work for change detection.
  • TNodeTemplate Node. Per-template-position metadata describing a DOM element, container, or projection point. Stored on the TView and shared across instances.
  • LContainer — an array slot in an LView that holds dynamically created views (e.g., from *ngFor, @for, structural directives).
  • Instruction — a generated function call (e.g., ɵɵelementStart, ɵɵproperty) emitted by the compiler. Implemented in packages/core/src/render3/instructions.
  • ɵ prefix — the "theta" prefix on private Angular APIs (ɵcmp, ɵfac, ɵɵelementStart). Reserved for emit and runtime internals; not part of the public API.

Reactivity

  • Signal — a cell holding a value with subscriber tracking. Defined in packages/core/primitives/signals. The basis for signal(), computed(), effect(), and signal-based component inputs.
  • linkedSignal — a signal that tracks an upstream signal but allows local override. Used by signal forms.
  • Reactive consumer — anything that subscribes to a signal: a computed(), an effect(), an LView rendering signals, or a template binding.
  • Zoneless — a mode where Angular schedules change detection without zone.js. Driven by signals and explicit markForCheck/scheduleMicrotask calls. The framework now defaults to zoneless-friendly testing patterns.

Dependency injection

  • Injector — a lookup table that resolves provider tokens to instances. Multiple injectors form a tree.
  • EnvironmentInjector — the application-scoped injector created by bootstrapApplication. Contains "environment providers" (provideRouter, provideHttpClient, etc.).
  • Element injector — a per-DOM-element injector that resolves directives and component-level providers. Looked up via the bloom filter in render3/di.ts.
  • Provider — a binding from token → factory or instance. Configured via providers, provideXxx functions, or static @Injectable({ providedIn: 'root' }).

App composition

  • Standalone component — a component declared with standalone: true (now the default) that imports its dependencies directly instead of via an NgModule.
  • bootstrapApplication — the standalone bootstrap entry point in @angular/platform-browser. Replaces platformBrowserDynamic().bootstrapModule(...).
  • NgModule — the legacy compositional unit. Still supported but deprecated for new code; the long-term plan is to remove @NgModule entirely.
  • Deferrable view — a @defer { ... } block whose dependencies are loaded lazily based on a trigger (idle, viewport, hover, interaction). Implemented in packages/core/src/defer.
  • Control flow blocks — the @if, @for, @switch, @let template syntax that replaces *ngIf, *ngFor, *ngSwitch. Compiled by packages/compiler/src/render3/view/template.

Hydration & SSR

  • Hydration — reusing server-rendered DOM at client boot instead of re-creating it. See packages/core/src/hydration.
  • ngSkipHydration — an attribute that opts a component out of hydration when it cannot be safely rehydrated (e.g., manual DOM manipulation).
  • Incremental hydration — hydrating deferred views only when their trigger fires, not at boot.
  • Transfer state — server-to-client state passed via a serialized JSON island. See packages/core/src/transfer_state.ts.
  • Domino — a fork of Mozilla's dom.js used by platform-server to provide a DOM implementation in Node. Forked at angular/domino.

Tooling

  • ng-dev — the internal CLI that powers commit linting, format, release, and PR utilities. Configured in .ng-dev/ and shipped from the @angular/ng-dev sister repository.
  • bazelisk — the Bazel launcher pinned to a specific Bazel version via .bazelversion.
  • ibazel — Bazel's iterative watcher; used by pnpm adev and pnpm devtools:devserver for incremental dev builds.
  • Goldens — snapshot files under goldens/ that pin public API surfaces and bundle-size budgets. Tested in CI; updated via pnpm public-api:update / pnpm symbol-extractor:update.
  • tsec — Google's "trusted-types" enforcement for TypeScript, configured in packages/tsec-exemption.json and run via pnpm test-tsec.

Versioning & release

  • Patch / minor / major — Angular ships every 6 months for major versions; minor/patch happen biweekly. Each major has an LTS window. See contributing-docs/branches-and-versioning.md.
  • -next.X — the pre-release tag on the next major (currently v22.0.0-next.10).
  • Caretaker — the rotating role that triages issues and merges PRs that week. See contributing-docs/caretaking.md.
  • CHANGELOG_ARCHIVE.md — the historical changelog (everything before the current major). The active changelog is CHANGELOG.md.

Repository quirks

  • workspace:* — pnpm syntax in package.json declaring an in-workspace dependency that resolves to source.
  • adev — short for "Angular dev"; the docs site at angular.dev. Located in adev/.
  • dev-app — a single-app pnpm workspace (dev-app/) used for ad-hoc framework experimentation. Distinct from adev.
  • devtools — the browser DevTools extension at devtools/, which uses message passing between an inspected page, a content script, and a DevTools panel.

Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.

Glossary – Angular wiki | Factory