ng add - please specify a project name
- Dominant language
- TypeScript
- Stars
- 27k
- Forks
- 11.8k
- Avg merge
- 14h 23m
- Merged PRs (30d)
- 162
Description
### Versions
```sh
_ _ ____ _ ___
/ \ _ __ __ _ _ _| | __ _ _ __ / ___| | |_ _|
/ △ \ | '_ \ / _` | | | | |/ _` | '__| | | | | | |
/ ___ \| | | | (_| | |_| | | (_| | | | |___| |___ | |
/_/ \_\_| |_|\__, |\__,_|_|\__,_|_| \____|_____|___|
|___/
Angular CLI: 6.0.5
Node: 10.1.0
OS: darwin x64
Angular: 6.0.3
... animations, common, compiler, compiler-cli, core, forms
... http, language-service, platform-browser
... platform-browser-dynamic, router
Package Version
------------------------------------------------------------
@angular-devkit/architect 0.6.5
@angular-devkit/build-angular 0.6.5
@angular-devkit/build-ng-packagr 0.6.5
@angular-devkit/build-optimizer 0.6.5
@angular-devkit/core 0.6.5
@angular-devkit/schematics 0.6.5
@angular/cli 6.0.5
@angular/material 6.1.0
@ngtools/json-schema 1.1.0
@ngtools/webpack 6.0.5
@schematics/angular 0.6.5
@schematics/update 0.6.5
ng-packagr 3.0.0-rc.5
rxjs 6.2.0
typescript 2.7.2
webpack 4.8.3
```
### Repro steps
* Step 1
starting a new project with `ng new angular-project`
* Step 2
generate a library/application inside the new angular-cli project
```sh
ng g library mylibrary
ng g application myapp
```
* Step 3
Add @angular/material
```
ng add @angular/material myapp
Installing packages for tooling via npm.
Multiple projects are defined; please specify a project name
```
### Observed behavior
`@angular/material` gets correclty installed in the node dependencies but the `myapp` project is not configured for using the library.
### Desired behavior
The current `ng add` usage is: `usage: ng add `
Ideally this should allow passing the target app like this:
```sh
usage: ng add [options]
options:
--project
The name of the project.
```
Contributor guide
Research direction
Start by reproducing the `ng add @angular/material myapp` flow in a workspace containing both `mylibrary` and `myapp`, then trace the `ng add` command entry point. Done means the command accepts a project name and configures `myapp` for Angular Material instead of only installing the package.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- angular, typescript
- Domain
- cli, frontend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100