# Feature catalog — angular/angular

> Canonical page: https://codevetter.com/unpack/angular/feature-catalog

# Feature catalog — angular/angular

Scanned commit 831cb13e1c6e5ff17da23273109772c2b088302e (2026-10-02). Generated by codevetter codevetter 1.15.0 on 2026-10-02.

Source inspection; upstream code and tests were not executed.

The user-facing surface includes framework APIs for application authors and separate tools for learning, debugging, and editing Angular applications. Angular.dev exposes documentation, reference pages, tutorials, a playground, and update guidance through generated and explicit routes. DevTools exposes component, routing, injector, profiling, and signal inspection operations. The catalog covers the inspected feature families; the bounded inventory does not establish exhaustive coverage of every API or screen.
- bootstrapApplication renders a standalone root component, while createApplication creates the application environment without bootstrapping a component. — [packages/platform-browser/src/browser.ts#L123-163](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/packages/platform-browser/src/browser.ts#L123-L163)
- Writable signals expose set, update, and asReadonly; underlying signal writes compare values before incrementing versions and notifying consumers. — [packages/core/src/render3/reactivity/signal.ts#L72-98](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/packages/core/src/render3/reactivity/signal.ts#L72-L98) [packages/core/primitives/signals/src/signal.ts#L86-103](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/packages/core/primitives/signals/src/signal.ts#L86-L103) [packages/core/primitives/signals/src/signal.ts#L120-125](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/packages/core/primitives/signals/src/signal.ts#L120-L125)
- Template parsing supports configurable whitespace handling, @ block syntax, @let syntax, selectorless syntax, i18n metadata, and parse diagnostics. — [packages/compiler/src/render3/view/template.ts#L123-174](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/packages/compiler/src/render3/view/template.ts#L123-L174) [packages/compiler/src/render3/view/template.ts#L185-213](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/packages/compiler/src/render3/view/template.ts#L185-L213)
- Router.navigateByUrl accepts strings or UrlTree values, and the navigation pipeline supports guards, resolvers, lazy component loading, route reuse, and view transitions. — [packages/router/src/router.ts#L546-555](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/packages/router/src/router.ts#L546-L555) [packages/router/src/navigation_transition.ts#L638-698](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/packages/router/src/navigation_transition.ts#L638-L698) [packages/router/src/navigation_transition.ts#L745-787](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/packages/router/src/navigation_transition.ts#L745-L787)
- Typed FormGroup accepts synchronous and asynchronous validators; setValue checks the complete group shape, updates child controls, and recomputes group validity. — [packages/forms/src/model/form_group.ts#L189-220](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/packages/forms/src/model/form_group.ts#L189-L220) [packages/forms/src/model/form_group.ts#L429-446](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/packages/forms/src/model/form_group.ts#L429-L446)
- HttpClient constructs requests with credentials, cache, timeout, integrity, and progress options; FetchBackend supports response parsing and download progress but rejects upload-progress requests. — [packages/common/http/src/client.ts#L494-516](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/packages/common/http/src/client.ts#L494-L516) [packages/common/http/src/fetch.ts#L244-258](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/packages/common/http/src/fetch.ts#L244-L258) [packages/common/http/src/fetch.ts#L337-377](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/packages/common/http/src/fetch.ts#L337-L377)
- Server rendering returns HTML after application stability, and adev enables client hydration alongside prerendering of every route. — [packages/platform-server/src/utils.ts#L342-379](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/packages/platform-server/src/utils.ts#L342-L379) [adev/src/app/app.config.ts#L37-42](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/adev/src/app/app.config.ts#L37-L42) [adev/src/app/app.config.server.ts#L13-22](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/adev/src/app/app.config.server.ts#L13-L22)
- The service-worker Driver handles fetch, message, push, notification-click, notification-close, and push-subscription-change events; fetch handling selects an application version and falls back to the network when needed. — [packages/service-worker/worker/src/driver.ts#L206-215](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/packages/service-worker/worker/src/driver.ts#L206-L215) [packages/service-worker/worker/src/driver.ts#L579-632](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/packages/service-worker/worker/src/driver.ts#L579-L632)
- createCustomElement turns an Angular component into a custom-element constructor, maps observed attributes to inputs, and connects a configurable component strategy. — [packages/elements/src/create-custom-element.ts#L132-154](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/packages/elements/src/create-custom-element.ts#L132-L154) [packages/elements/src/create-custom-element.ts#L181-215](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/packages/elements/src/create-custom-element.ts#L181-L215)
- The localize initialization entrypoint installs $localize on globalThis; the upgrade static entrypoint exports downgradeComponent, downgradeInjectable, downgradeModule, UpgradeComponent, and UpgradeModule. — [packages/localize/init/index.ts#L8-17](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/packages/localize/init/index.ts#L8-L17) [packages/upgrade/static/public_api.ts#L9-18](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/packages/upgrade/static/public_api.ts#L9-L18)
- The animation metadata API still exposes animation(), explicitly deprecated since 20.2 in favor of animate.enter or animate.leave, with an expressed removal intent for v23. — [packages/animations/src/animation_metadata.ts#L1150-1158](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/packages/animations/src/animation_metadata.ts#L1150-L1158)
- Angular.dev routes include home, documentation, API references, CLI references, tutorials, playground, update guide, redirects, footer content, and a wildcard not-found page. — [adev/src/app/routing/routes.ts#L36-68](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/adev/src/app/routing/routes.ts#L36-L68) [adev/src/app/routing/routes.ts#L91-126](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/adev/src/app/routing/routes.ts#L91-L126) [adev/src/app/routing/routes.ts#L128-164](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/adev/src/app/routing/routes.ts#L128-L164)
- Documentation search debounces queries by 200 ms, requests up to 20 Algolia hits, deduplicates URLs, and provides recent and favorite history backed by docs-search-history-v1. — [adev/shared-docs/services/search.service.ts#L28-59](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/adev/shared-docs/services/search.service.ts#L28-L59) [adev/shared-docs/services/search.service.ts#L76-100](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/adev/shared-docs/services/search.service.ts#L76-L100) [adev/shared-docs/services/search.service.ts#L189-229](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/adev/shared-docs/services/search.service.ts#L189-L229) [adev/shared-docs/services/search-history.service.ts#L13-44](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/adev/shared-docs/services/search-history.service.ts#L13-L44)
- Interactive tutorials mount project files into WebContainer, install dependencies with npm, start a development server, expose a preview URL, and support reset and restart operations. — [adev/src/app/editor/node-runtime-sandbox.service.ts#L125-150](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/adev/src/app/editor/node-runtime-sandbox.service.ts#L125-L150) [adev/src/app/editor/node-runtime-sandbox.service.ts#L175-201](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/adev/src/app/editor/node-runtime-sandbox.service.ts#L175-L201) [adev/src/app/editor/node-runtime-sandbox.service.ts#L426-462](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/adev/src/app/editor/node-runtime-sandbox.service.ts#L426-L462)
- DevTools registers profiling, component-state mutation, route navigation, injector-provider, transfer-state, and signal-graph operations; VS Code activates its language client after workspace trust and restarts it for relevant configuration changes. — [devtools/projects/ng-devtools-backend/src/lib/client-event-subscribers.ts#L109-144](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/devtools/projects/ng-devtools-backend/src/lib/client-event-subscribers.ts#L109-L144) [vscode-ng-language-service/client/src/extension.ts#L15-47](https://github.com/angular/angular/blob/831cb13e1c6e5ff17da23273109772c2b088302e/vscode-ng-language-service/client/src/extension.ts#L15-L47)

Every claim links to its cited files at the pinned commit. Citations identify source evidence; they do not establish runtime correctness. Independent CodeVetter scan — not reviewed by upstream maintainers.

## Public product links

- [CodeVetter](https://codevetter.com/)
- [Download](https://codevetter.com/download)
- [Documentation](https://codevetter.com/docs/)
- [Source](https://github.com/Codevetter/codevetter)
