reference-core
Angular Core (packages/core) Mental Model
This document outlines the architecture and mental model for packages/core, the heart of the Angular framework.
1. High-Level Architecture
packages/core contains the runtime logic for Angular. Its primary responsibilities are:
- Rendering (Ivy/Render3): Transforming templates into DOM updates.
- Dependency Injection (DI): Managing object creation and lifetime.
- Change Detection: Synchronizing the model with the view.
- Reactivity: Signals and Zone.js integration.
2. Rendering Engine (Ivy / Render3)
The rendering engine (located in packages/core/src/render3) uses an instruction-based approach.
Key Concepts
More from angular/angular
angular-developer
Generates Angular code and provides architectural guidance. Trigger when creating projects, components, or services, or for best practices on reactivity (signals, linkedSignal, resource), forms, dependency injection, routing, SSR, accessibility (ARIA), animations, styling (component styles, Tailwind CSS), testing, or CLI tooling.
1.1Kreference-signal-forms
Explains the mental model and architecture of the code under `packages/forms/signals`. You MUST use this skill any time you plan to work with code in `packages/forms/signals`
918adev-writing-guide
Comprehensive writing guide for Angular documentation (adev). Covers Google Technical Writing standards, Angular-specific markdown extensions, code blocks, and components. You MUST use this skill any time you plan to create, edit, or review documentation files in `adev/` or `adev/src/content`.
873reference-compiler-cli
Explains the mental model and architecture of the code under `packages/compiler-cli`. You MUST use this skill any time you plan to work with code in `packages/compiler-cli`
867pr review
Guidelines and tools for reviewing pull requests in the Angular repository.
485angular-new-app
Creates a new Angular app using the Angular CLI. This skill should be used whenever a user wants to create a new Angular application and contains important guidelines for how to effectively create a modern Angular application.
195