@angular/cli 20.3.28
CLI tool for Angular
@angular/cli@20.3.28 was published on 2026-06-11. Its manifest declares 18 runtime dependencies and 0 peer requirements. Type declarations are bundled according to the package metadata. The declared Node.js requirement is ^20.19.0 || ^22.12.0 || >=24.0.0.
All @angular/cli versions · Permanent reference to 20.3.28 · Latest release
Package specifications
| Version | 20.3.28 |
|---|---|
| License declaration | MIT |
| Published | 2026-06-11T16:38:11.210Z |
| Node.js requirement | ^20.19.0 || ^22.12.0 || >=24.0.0 |
| Type declarations | Bundled declarations |
| Runtime dependency count | 18 |
| Peer requirement count | 0 |
| Optional dependency count | 0 |
| Minified size | Measurement not available yet |
| Minified + gzip | Measurement not available yet |
| Unpacked distribution size | 826.65 KiB |
| Published file count | 183 |
| Package type | Not declared |
| ES module entry | Not declared |
| Default entry | lib/cli/index.js |
| Side effects declaration | Not declared |
| Direct advisories | 0 |
| Resolved graph dependencies | 302 |
| Repository stars | 27020 |
| Repository forks | 11817 |
Install @angular/cli 20.3.28
npm install @angular/cli@20.3.28 pnpm add @angular/cli@20.3.28 yarn add @angular/cli@20.3.28
Runtime dependencies
- ini 5.0.0
- zod 4.1.13
- yargs 18.0.0
- listr2 9.0.1
- pacote 21.0.4
- semver 7.7.2
- resolve 1.22.10
- jsonc-parser 3.3.1
- algoliasearch 5.35.0
- npm-package-arg 13.0.0
- @inquirer/prompts 7.8.2
- @yarnpkg/lockfile 1.1.0
- @schematics/angular 20.3.28
- @angular-devkit/core 20.3.28
- @angular-devkit/architect 0.2003.28
- @modelcontextprotocol/sdk 1.26.0
- @angular-devkit/schematics 20.3.28
- @listr2/prompt-adapter-inquirer 3.0.1
Peer requirements
- None declared
Optional dependencies
- None declared
Resolved dependency graph
This deps.dev graph describes a generic 64-bit Linux environment, not your application lockfile.
- @angular-devkit/architect@0.2003.28 — direct
- @angular-devkit/core@20.3.28 — direct
- @angular-devkit/schematics@20.3.28 — direct
- @inquirer/prompts@7.8.2 — direct
- @listr2/prompt-adapter-inquirer@3.0.1 — direct
- @modelcontextprotocol/sdk@1.26.0 — direct
- @schematics/angular@20.3.28 — direct
- @yarnpkg/lockfile@1.1.0 — direct
- algoliasearch@5.35.0 — direct
- ini@5.0.0 — direct
- jsonc-parser@3.3.1 — direct
- listr2@9.0.1 — direct
- npm-package-arg@13.0.0 — direct
- pacote@21.0.4 — direct
- resolve@1.22.10 — direct
- semver@7.7.2 — direct
- yargs@18.0.0 — direct
- zod@4.1.13 — direct
- rxjs@7.8.2 — indirect
- ajv@8.18.0 — indirect
- ajv-formats@3.0.1 — indirect
- picomatch@4.0.4 — indirect
- source-map@0.7.6 — indirect
- magic-string@0.30.17 — indirect
- ora@8.2.0 — indirect
- @inquirer/checkbox@4.3.2 — indirect
- @inquirer/confirm@5.1.21 — indirect
- @inquirer/editor@4.2.23 — indirect
- @inquirer/expand@4.0.23 — indirect
- @inquirer/input@4.3.1 — indirect
- @inquirer/number@3.0.23 — indirect
- @inquirer/password@4.0.23 — indirect
- @inquirer/rawlist@4.1.11 — indirect
- @inquirer/search@3.2.2 — indirect
- @inquirer/select@4.4.2 — indirect
- @inquirer/type@3.0.10 — indirect
- @hono/node-server@1.19.17 — indirect
- content-type@1.0.5 — indirect
- cors@2.8.6 — indirect
- cross-spawn@7.0.6 — indirect
- eventsource@3.0.7 — indirect
- eventsource-parser@3.1.1 — indirect
- express@5.3.0 — indirect
- express-rate-limit@8.7.1 — indirect
- hono@4.13.14 — indirect
- jose@6.2.13 — indirect
- json-schema-typed@8.0.2 — indirect
- pkce-challenge@5.0.1 — indirect
- raw-body@3.0.2 — indirect
- zod-to-json-schema@3.25.2 — indirect
- @algolia/abtesting@1.1.0 — indirect
- @algolia/client-abtesting@5.35.0 — indirect
- @algolia/client-analytics@5.35.0 — indirect
- @algolia/client-common@5.35.0 — indirect
- @algolia/client-insights@5.35.0 — indirect
- @algolia/client-personalization@5.35.0 — indirect
- @algolia/client-query-suggestions@5.35.0 — indirect
- @algolia/client-search@5.35.0 — indirect
- @algolia/ingestion@1.35.0 — indirect
- @algolia/monitoring@1.35.0 — indirect
- @algolia/recommend@5.35.0 — indirect
- @algolia/requester-browser-xhr@5.35.0 — indirect
- @algolia/requester-fetch@5.35.0 — indirect
- @algolia/requester-node-http@5.35.0 — indirect
- cli-truncate@4.0.0 — indirect
- colorette@2.0.20 — indirect
- eventemitter3@5.0.4 — indirect
- log-update@6.1.0 — indirect
- rfdc@1.4.1 — indirect
- wrap-ansi@9.0.2 — indirect
- hosted-git-info@9.0.3 — indirect
- proc-log@5.0.0 — indirect
- validate-npm-package-name@6.0.2 — indirect
- @npmcli/git@7.0.2 — indirect
- @npmcli/installed-package-contents@4.0.0 — indirect
- @npmcli/package-json@7.0.5 — indirect
- @npmcli/promise-spawn@9.0.2 — indirect
- @npmcli/run-script@10.0.4 — indirect
- cacache@20.0.4 — indirect
- fs-minipass@3.0.3 — indirect
- minipass@7.1.3 — indirect
- npm-packlist@10.0.4 — indirect
- npm-pick-manifest@11.0.3 — indirect
- npm-registry-fetch@19.1.1 — indirect
- proc-log@6.1.0 — indirect
- promise-retry@2.0.1 — indirect
- sigstore@4.1.1 — indirect
- ssri@13.0.1 — indirect
- tar@7.5.22 — indirect
- is-core-module@2.17.0 — indirect
- path-parse@1.0.7 — indirect
- supports-preserve-symlinks-flag@1.0.0 — indirect
- cliui@9.0.1 — indirect
- escalade@3.2.0 — indirect
- get-caller-file@2.0.5 — indirect
- string-width@7.2.0 — indirect
- y18n@5.0.8 — indirect
- yargs-parser@22.0.0 — indirect
- tslib@2.8.1 — indirect
- fast-deep-equal@3.1.3 — indirect
- fast-uri@3.1.9 — indirect
- json-schema-traverse@1.0.0 — indirect
- require-from-string@2.0.2 — indirect
- @jridgewell/sourcemap-codec@1.6.0 — indirect
- chalk@5.6.2 — indirect
- cli-cursor@5.0.0 — indirect
- cli-spinners@2.9.2 — indirect
- is-interactive@2.0.0 — indirect
- is-unicode-supported@2.1.0 — indirect
- log-symbols@6.0.0 — indirect
- stdin-discarder@0.2.2 — indirect
- strip-ansi@7.2.0 — indirect
- @inquirer/ansi@1.0.2 — indirect
- @inquirer/core@10.3.2 — indirect
- @inquirer/figures@1.0.15 — indirect
- yoctocolors-cjs@2.1.3 — indirect
- @inquirer/external-editor@1.0.3 — indirect
- object-assign@4.1.1 — indirect
- vary@1.1.2 — indirect
- path-key@3.1.1 — indirect
- shebang-command@2.0.0 — indirect
- which@2.0.2 — indirect
- accepts@2.0.0 — indirect
- body-parser@2.4.0 — indirect
- content-disposition@2.0.1 — indirect
- content-type@2.1.0 — indirect
- cookie@0.7.2 — indirect
- cookie-signature@1.2.2 — indirect
- debug@4.4.3 — indirect
- depd@2.0.0 — indirect
- encodeurl@2.0.1 — indirect
- escape-html@1.0.3 — indirect
- etag@1.8.1 — indirect
- finalhandler@2.1.1 — indirect
- fresh@2.0.0 — indirect
- http-errors@2.0.1 — indirect
- merge-descriptors@2.0.0 — indirect
- mime-types@3.0.2 — indirect
- on-finished@2.4.2 — indirect
- once@1.4.0 — indirect
- parseurl@1.3.3 — indirect
- proxy-addr@2.0.8 — indirect
- qs@6.17.1 — indirect
- range-parser@1.3.0 — indirect
- router@2.2.0 — indirect
- send@1.2.1 — indirect
- serve-static@2.2.1 — indirect
- statuses@2.0.2 — indirect
- type-is@2.1.0 — indirect
- ip-address@10.7.5 — indirect
- bytes@3.1.2 — indirect
- iconv-lite@0.7.3 — indirect
- unpipe@1.0.0 — indirect
- slice-ansi@5.0.0 — indirect
- ansi-escapes@7.3.0 — indirect
- slice-ansi@7.1.2 — indirect
- wrap-ansi@9.0.2 — indirect
- ansi-styles@6.2.3 — indirect
- lru-cache@11.5.3 — indirect
- @gar/promise-retry@1.0.3 — indirect
- ini@6.0.0 — indirect
- proc-log@6.1.0 — indirect
- which@6.0.1 — indirect
- npm-bundled@5.0.0 — indirect
- npm-normalize-package-bin@5.0.0 — indirect
- glob@13.0.6 — indirect
- json-parse-even-better-errors@5.0.0 — indirect
- proc-log@6.1.0 — indirect
- spdx-expression-parse@4.0.0 — indirect
- which@6.0.1 — indirect
- @npmcli/node-gyp@5.0.0 — indirect
- node-gyp@12.4.0 — indirect
- proc-log@6.1.0 — indirect
- @npmcli/fs@5.0.0 — indirect
- minipass-collect@2.0.1 — indirect
- minipass-flush@1.0.7 — indirect
- minipass-pipeline@1.2.4 — indirect
- p-map@7.1.1 — indirect
- ignore-walk@8.0.0 — indirect
- proc-log@6.1.0 — indirect
- npm-install-checks@8.0.0 — indirect
- @npmcli/redact@4.0.0 — indirect
- jsonparse@1.3.1 — indirect
- make-fetch-happen@15.0.6 — indirect
- minipass-fetch@5.0.2 — indirect
- minizlib@3.1.0 — indirect
- proc-log@6.1.0 — indirect
- err-code@2.0.3 — indirect
- retry@0.12.0 — indirect
- @sigstore/bundle@4.0.0 — indirect
- @sigstore/core@3.2.1 — indirect
- @sigstore/protobuf-specs@0.5.2 — indirect
- @sigstore/sign@4.1.1 — indirect
- @sigstore/tuf@4.0.2 — indirect
- @sigstore/verify@3.1.1 — indirect
- @isaacs/fs-minipass@4.0.1 — indirect
- chownr@3.0.0 — indirect
- yallist@5.0.0 — indirect
- hasown@2.0.4 — indirect
- wrap-ansi@9.0.2 — indirect
- emoji-regex@10.6.0 — indirect
- get-east-asian-width@1.7.0 — indirect
- restore-cursor@5.1.0 — indirect
- is-unicode-supported@1.3.0 — indirect
- ansi-regex@6.4.0 — indirect
- cli-width@4.1.0 — indirect
- mute-stream@2.0.0 — indirect
- signal-exit@4.1.0 — indirect
- wrap-ansi@6.2.0 — indirect
- chardet@2.2.0 — indirect
- shebang-regex@3.0.0 — indirect
- isexe@2.0.0 — indirect
- negotiator@1.1.0 — indirect
- content-type@2.1.0 — indirect
- ms@2.1.3 — indirect
- inherits@2.0.4 — indirect
- setprototypeof@1.2.0 — indirect
- toidentifier@1.0.1 — indirect
- mime-db@1.54.0 — indirect
- ee-first@1.1.1 — indirect
- wrappy@1.0.2 — indirect
- forwarded@0.2.0 — indirect
- ipaddr.js@1.9.1 — indirect
- es-define-property@1.0.1 — indirect
- side-channel@1.1.1 — indirect
- is-promise@4.0.0 — indirect
- path-to-regexp@8.4.2 — indirect
- content-type@2.1.0 — indirect
- media-typer@1.1.1 — indirect
- safer-buffer@2.1.2 — indirect
- ansi-styles@6.2.3 — indirect
- is-fullwidth-code-point@4.0.0 — indirect
- environment@1.1.0 — indirect
- ansi-styles@6.2.3 — indirect
- is-fullwidth-code-point@5.1.0 — indirect
- isexe@4.0.0 — indirect
- minimatch@10.2.6 — indirect
- path-scurry@2.0.2 — indirect
- spdx-exceptions@2.5.0 — indirect
- spdx-license-ids@3.0.24 — indirect
- isexe@4.0.0 — indirect
- env-paths@2.2.1 — indirect
- exponential-backoff@3.1.3 — indirect
- graceful-fs@4.2.11 — indirect
- nopt@9.0.0 — indirect
- proc-log@6.1.0 — indirect
- tinyglobby@0.2.17 — indirect
- undici@6.29.1 — indirect
- which@6.0.1 — indirect
- minipass@3.3.6 — indirect
- minipass@3.3.6 — indirect
- @npmcli/agent@4.0.2 — indirect
- http-cache-semantics@4.3.0 — indirect
- proc-log@6.1.0 — indirect
- minipass-sized@2.0.0 — indirect
- proc-log@6.1.0 — indirect
- tuf-js@4.1.0 — indirect
- function-bind@1.1.2 — indirect
- ansi-styles@6.2.3 — indirect
- onetime@7.0.0 — indirect
- ansi-styles@4.3.0 — indirect
- string-width@4.2.3 — indirect
- strip-ansi@6.0.1 — indirect
- content-type@2.1.0 — indirect
- es-errors@1.3.0 — indirect
- object-inspect@1.13.4 — indirect
- side-channel-list@1.0.1 — indirect
- side-channel-map@1.0.1 — indirect
- side-channel-weakmap@1.0.2 — indirect
- brace-expansion@5.0.12 — indirect
- abbrev@4.0.0 — indirect
- fdir@6.5.0 — indirect
- isexe@4.0.0 — indirect
- yallist@4.0.0 — indirect
- yallist@4.0.0 — indirect
- agent-base@7.1.4 — indirect
- http-proxy-agent@7.0.2 — indirect
- https-proxy-agent@7.0.6 — indirect
- socks-proxy-agent@8.0.5 — indirect
- @tufjs/models@4.1.0 — indirect
- mimic-function@5.0.1 — indirect
- color-convert@2.0.1 — indirect
- emoji-regex@8.0.0 — indirect
- is-fullwidth-code-point@3.0.0 — indirect
- ansi-regex@5.0.1 — indirect
- call-bound@1.0.4 — indirect
- get-intrinsic@1.3.1 — indirect
- balanced-match@4.0.4 — indirect
- socks@2.8.10 — indirect
- @tufjs/canonical-json@2.0.0 — indirect
- color-name@1.1.4 — indirect
- call-bind-apply-helpers@1.0.2 — indirect
- async-function@1.0.0 — indirect
- async-generator-function@1.0.0 — indirect
- es-object-atoms@1.1.2 — indirect
- generator-function@2.0.1 — indirect
- get-proto@1.0.1 — indirect
- gopd@1.2.0 — indirect
- has-symbols@1.1.0 — indirect
- math-intrinsics@1.1.0 — indirect
- smart-buffer@4.2.0 — indirect
- dunder-proto@1.0.1 — indirect
How to interpret the specifications
Bundlephobia measurements use its standard package build and may exclude peer dependencies. Unpacked npm distribution size includes shipped files and is a different measurement. Module declarations do not prove tree-shaking or runtime compatibility.
Advisories apply to this package version directly; transitive dependencies need separate inspection. Repository signals describe the whole repository and are current observations, including on historical-version pages.
OpenSSF repository checks
Provider assessment: 2026-08-24T00:00:00Z. These are repository checks, not a jsL maintenance score.
| Maintained | 10/10 — 30 commit(s) and 12 issue activity found in the last 90 days -- score normalized to 10 |
|---|---|
| Security-Policy | 10/10 — security policy file detected |
| Dangerous-Workflow | 10/10 — no dangerous workflow patterns detected |
| Code-Review | 9/10 — Found 27/28 approved changesets -- score normalized to 9 |
| Token-Permissions | 10/10 — GitHub workflow tokens follow principle of least privilege |
| CII-Best-Practices | 2/10 — badge detected: InProgress |
| Binary-Artifacts | 10/10 — no binaries found in the repo |
| License | 10/10 — license file detected |
| Pinned-Dependencies | 10/10 — all dependencies are pinned |
| Branch-Protection | 3/10 — branch protection is not maximal on development and all release branches |
| Fuzzing | 0/10 — project is not fuzzed |
| SAST | 0/10 — SAST tool is not run on all commits -- score normalized to 0 |
Evidence and freshness
- https://registry.npmjs.org/%40angular%2Fcli/20.3.28 — retrieved 2026-10-30T02:02:18.574Z
- https://api.deps.dev/v3/projects/github.com%2Fangular%2Fangular-cli — retrieved 2026-10-30T00:10:55.200Z
- https://api.deps.dev/v3/systems/npm/packages/%40angular%2Fcli/versions/20.3.28 — retrieved 2026-10-30T02:02:19.081Z
- https://api.deps.dev/v3/systems/npm/packages/%40angular%2Fcli/versions/20.3.28:dependencies — retrieved 2026-10-30T02:02:19.125Z