What is @angular/cli?
The @angular/cli package is a command-line interface tool that you can use to initialize, develop, scaffold, and maintain Angular applications directly from a command shell. It provides commands for creating new projects, generating application and library code, performing a variety of ongoing development tasks such as testing, bundling, and deployment.
What are @angular/cli's main functionalities?
Project Scaffolding
Creates a new Angular application with a default structure by running the 'ng new' command followed by the project name.
ng new my-angular-app
Generating Components, Services, and other features
Generates a new component and its associated files by using the 'ng generate' command followed by the feature type and name.
ng generate component my-component
Building and Serving the Application
Compiles the application and starts a web server, making the app accessible in a browser. The 'ng serve' command is used for this purpose.
ng serve
Running Unit Tests
Executes the unit tests defined in the application using the 'ng test' command.
ng test
Building for Production
Compiles the application for production deployment, optimizing the build for performance and size using the 'ng build' command with the '--prod' flag.
ng build --prod
Other packages similar to @angular/cli
create-react-app
Similar to @angular/cli, create-react-app is a command-line interface for setting up new React applications. It abstracts away build configuration to a pre-configured setup, allowing developers to focus on writing code. Unlike @angular/cli, it is tailored specifically for React and does not provide an extensive set of generation commands.
vue-cli
Vue CLI is a full system for rapid Vue.js development, similar to @angular/cli for Angular. It provides project scaffolding, a development server, build tools, and a set of plugins for common tasks. Vue CLI is designed for Vue.js and offers a similar level of functionality for Vue developers.
ember-cli
Ember CLI is a command-line utility for creating, developing, and building Ember.js applications. It provides a standardized development structure and build pipeline, much like @angular/cli does for Angular. Ember CLI focuses on Ember.js and has a strong emphasis on convention over configuration.
Angular CLI - The CLI tool for Angular.
The sources for this package are in the Angular CLI repository. Please file issues and pull requests against that repository.
Usage information and reference details can be found in repository README file.
19.0.0-rc.1 (2024-11-06)
@angular/cli
| Commit | Type | Description |
| --------------------------------------------------------------------------------------------------- | ---- | ----------------------------------------------------------------- |
| b847d4460 | fix | recommend optional application update migration during v19 update |
@schematics/angular
| Commit | Type | Description |
| --------------------------------------------------------------------------------------------------- | ---- | ---------------------------------- |
| b1504c3bc | fix | component spec with export default |
@angular-devkit/build-angular
| Commit | Type | Description |
| --------------------------------------------------------------------------------------------------- | ---- | ---------------------------- |
| 2ec877dd0 | fix | handle basename collisions |
| 43e7aae22 | fix | remove double-watch in karma |
| 1e37b5939 | fix | serve assets |
@angular/build
| Commit | Type | Description |
| --------------------------------------------------------------------------------------------------- | ---- | --------------------------------------------------------------------------- |
| ecaf870b5 | fix | always clear dev-server error overlay on non-error result |
| 71534aadc | fix | check referenced files against native file paths |
| fed31e064 | fix | correctly use dev-server hmr option to control stylesheet hot replacement |
| b86bb080e | fix | disable dev-server websocket when live reload is disabled |
| efb2232df | fix | ensure accurate content size in server asset metadata |
| 18a8584ea | fix | ensure SVG template URLs are considered templates with external stylesheets |
| 7502fee28 | fix | Exclude known --import
from execArgv when spawning workers |
| c41529cc1 | fix | handle APP_BASE_HREF
correctly in prerendered routes |
| cf0228b82 | fix | skip wildcard routes from being listed as prerendered routes |
| c8e1521a2 | fix | workaround Vite CSS ShadowDOM hot replacement |
@angular/ssr
| Commit | Type | Description |
| --------------------------------------------------------------------------------------------------- | ---- | ---------------------------------------------------------------------------------- |
| 74b3e2d51 | fix | add validation to prevent use of provideServerRoutesConfig
in browser context |
| df4e1d360 | fix | enable serving of prerendered pages in the App Engine |
| 3cf7a5223 | fix | initialize the DI tokens with null
to avoid requiring them to be set to optional |
| f460b91d4 | perf | integrate ETags for prerendered pages |
<!-- CHANGELOG SPLIT MARKER -->
<a name="19.0.0-rc.0"></a>