You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Our project setup doesn't have an immediate sub-folder of app, however, it appears that running ng generate always assume that you have an app folder under the app root folder you specified in .angular-cli.json
Versions
Angular CLI: 1.6.0
Node: 7.0.0
OS: darwin x64
Angular:
...
I'd like an option to be able to configure whether your project has the app folder or not. Or maybe an option to configure the whole path the component gets created in.
ng generate is adding app to the path by default. How to remove 'app' ?
"root": "",
"sourceRoot": "ui-lib/src",
"projectType": "library",
ng g module dashboard/widget -d
CREATE src/app/dashboard/widget/widget.module.spec.ts (275 bytes)
CREATE src/app/dashboard/widget/widget.module.ts (190 bytes)
Reacted by Leon Adler, Wasif Ali, Bruno Mayer Paixão, Colby Rome, Michael McDonald, Umut Akkaya, Ruffin, Gary Alfred, Ryan Knittel and Nathaniel A Collier
I'm having the same issue as @jacobjojan, every time I run ng generate it generates by default in app folder, I want to generate out of app folder, how to do that?
Reacted by Wasif Ali, Elio Maggini, Deepak Pathak, Colby Rome, Michael McDonald, apijay20, Thomas Cayne, Chetan Baadkar, Elio Maggini, sajidnovateus and 7 more
We have a code-base similar to Angular Material, where the library modules folders are directly beneath the main library folder.
We have recently replaced our custom build systems in favor of the Angular CLI, but when using the ng generate commands, they automatically add either app or lib depending on the project type (application or library).
Why can't this be configurable? Why isn't "sourceRoot" the literal root?
Reacted by Umut Akkaya, John Crim, Terry Brown, Noorsil Karedia, Ruffin, Gary Alfred, Lars Berger, Nguyen Tran Tan An, mossiomylv, Nathaniel A Collier and 1 more
Thank you for submitting your feature request! Looks like during the polling process it didn't collect a sufficient number of votes to move to the next stage.
We want to keep Angular rich and ergonomic and at the same time be mindful about its scope and learning journey. If you think your request could live outside Angular's scope, we'd encourage you to collaborate with the community on publishing it as an open source package.
You can find more details about the feature request process in our documentation.
Activity
[-]Ng generate assumes an `app` folder[/-][+]Ng generate always assumes an `app` folder[/+]PoiScript commentedon Feb 1, 2018
Actually, there is an undocumented option in
.angular-cli.jsoncalledappRootwhich is probably you're looking for.martinsik commentedon Feb 13, 2018
@PoiScript is right, there's
appRootoptions for this, see #7775.leonadler commentedon Jun 19, 2018
Using
appRootleads to an error "Workspace needs to be loaded before it is used."and is not included in the json-schema for angular.json.
PoiScript commentedon Jun 19, 2018
@leonadler
appRootis used for angular cli 1.x project. angular cli 6 introduces a new configuration schema. Each projects now has individualrootandsourceRootoptions, see https://github.com/angular/angular-cli/wiki/angular-workspacejacobjojan commentedon Jul 10, 2018
ng generate is adding app to the path by default. How to remove 'app' ?
"root": "",
"sourceRoot": "ui-lib/src",
"projectType": "library",
ng g module dashboard/widget -d
CREATE src/app/dashboard/widget/widget.module.spec.ts (275 bytes)
CREATE src/app/dashboard/widget/widget.module.ts (190 bytes)
wasif-digitalnet commentedon Aug 1, 2018
I'm having the same issue as @jacobjojan, every time I run
ng generateit generates by default in app folder, I want to generate out of app folder, how to do that?giolf commentedon Aug 22, 2018
@wasif-digitalnet what about
ng generate module ../my-modulewasif-digitalnet commentedon Aug 28, 2018
@giolf I have tried it, I guess there was some issues while generating the project, I made a new project and it's working fine now,
giolf commentedon Aug 28, 2018
@wasif-digitalnet probably you run that command in a nested folder of your project ?
Anyway I’m glad to hear that you could solve it
ilivestrong commentedon Oct 8, 2018
@giolf Your solution worked... Cheers!
1 remaining item
Paitum commentedon Jul 31, 2019
This problem is still unresolved.
We have a code-base similar to Angular Material, where the library modules folders are directly beneath the main library folder.
We have recently replaced our custom build systems in favor of the Angular CLI, but when using the
ng generatecommands, they automatically add eitherapporlibdepending on the project type (application or library).Why can't this be configurable? Why isn't "sourceRoot" the literal root?
angular-robot commentedon Feb 1, 2022
Just a heads up that we kicked off a community voting process for your feature request. There are 20 days until the voting process ends.
Find more details about Angular's feature request process in our documentation.
angular-robot commentedon Feb 21, 2022
Thank you for submitting your feature request! Looks like during the polling process it didn't collect a sufficient number of votes to move to the next stage.
We want to keep Angular rich and ergonomic and at the same time be mindful about its scope and learning journey. If you think your request could live outside Angular's scope, we'd encourage you to collaborate with the community on publishing it as an open source package.
You can find more details about the feature request process in our documentation.
umagon commentedon Aug 6, 2025
This style guide https://angular.dev/style-guide#organize-your-project-by-feature-areas recommends using
/srcas the root to put feature folders inside.This conflicts with Angular CLI schematics path adding
appbetweensrcand the name of the component.