angular / angular/angular-cli

Split `angular.json` into multiple files

Offen
#22,655 6 Kommentare 73 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
area: @angular-devkit/core area: @angular/cli feature feature: under consideration
Vorherrschende Sprache
TypeScript
Sterne
27k
Forks
11.8k
Ø Merge
14 Std. 23 Min.
Gemergte PRs (30 T.)
162

Beschreibung

# 🚀 Feature request

- [x] new
- [x] build
- [x] serve
- [x] test
- [x] e2e
- [x] generate
- [ ] add
- [ ] update
- [x] lint
- [ ] extract-i18n
- [x] run
- [ ] config
- [ ] help
- [ ] version
- [ ] doc

### Description

I have a monorepository and I want to split my `angular.json` into separate files.

So that I can have something like this:

```
{
"version": 2,
"projects": {
"module-auth": "packages/auth",
"module-core": "packages/core",
"module-button": "packages/button"
}
}
```

After working with NX I noticed that with Lerna and the usual setup my `angular.json` file has 119 lines of code even though I basically have an empty repository. I believe that having a single `angular.json` file is a very bad idea, especially for bigger monorepositories or UI libraries.

### Describe the solution you'd like

Make the JSON configuration 1:1 with [what NX does](https://nx.dev/configuration/projectjson#workspace-json) or implement similar functionality.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne mit der vorhandenen Struktur von angular.json und den als relevant markierten Angular CLI-Befehlen: new, build, serve, test, e2e, generate, lint und run. Verfolge, wie diese Befehle die Workspace-Konfiguration verwenden, und definiere anschließend die Unterstützung für separate Projektdateien mit einem Verhalten, das dem angeforderten NX-style-Layout entspricht.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
angular, typescript
Bereich
build-system, tooling
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.