Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bgotink/yarn-plugin-angular
yarn 2 (aka berry) plugin to facilitate angular projects
https://github.com/bgotink/yarn-plugin-angular
Last synced: about 1 month ago
JSON representation
yarn 2 (aka berry) plugin to facilitate angular projects
- Host: GitHub
- URL: https://github.com/bgotink/yarn-plugin-angular
- Owner: bgotink
- License: mit
- Created: 2020-02-09T01:13:59.000Z (almost 5 years ago)
- Default Branch: latest
- Last Pushed: 2021-07-08T13:28:31.000Z (over 3 years ago)
- Last Synced: 2023-03-25T19:41:49.675Z (almost 2 years ago)
- Language: TypeScript
- Size: 128 MB
- Stars: 10
- Watchers: 3
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Yarn 2 angular plugin
This repository contains a yarn 2 (aka berry) plugin for angular development.
## Install
```bash
yarn plugin import https://github.com/bgotink/yarn-plugin-angular/raw/latest/bin/%40yarnpkg/plugin-angular.js
```## Angular CLI in monorepositories
This plugin makes the Angular CLI available in your entire monorepository.
Once installed in the root `package.json` file, running `ng` will be available everywhere:- You can run `yarn ng` in the entire monorepository, regardless of whether the current package has a dependency on `@angular/cli`.
- You can use `ng` in scripts in the `scripts` section of any `package.json` of your monorepository.## Interactive update
This plugins adds a powerful interactive update command. Try it out using `yarn ng update-interactive`.
Some of the features of this command:
- 🙆♂️ It gives an extensive overview of what you're updating before actually performing the update
- 📦 Full monorepository support: every workspace in your repository gets updated, not just the root workspace
- 📝 By using the Yarn APIs the update command seamlessly uses the correct registries with any configured authentication.## Angular in yarn's Plug-n-Play mode
This plugin's PnP support is experimental. It should work for angular 8.3, 9, 10, and 11, but only parts of angular have been tested so far.
If you're not using PnP, everything should work as is.- CLI:
- ✅ Running commands in the angular CLI (`ng build`, `ng test`, `ng e2e`, `ng xi18n` etc)
- ✅ Running schematics (`ng generate`)
- ❌ Updating packages (`ng update`)
- …
- Devkit:
- ✅ Building an application (`@angular-devkit/build-angular:browser`)
- ✅ Serving an application (`@angular-devkit/build-angular:dev-server`)
- ✅ Running unit tests (`@angular-devkit/build-angular:karma`)
- ✅ Running e2e tests (`@angular-devkit/build-angular:protractor`)
- …
- Other:
- …## Contributing
When making changes, use `yarn build` to build the plugin. This'll create two
files.- At `bundles/@yarnpkg/plugin-angular.js` you'll find the minified bundle, similar to the released file in the `bin` folder.
- The second file, `bundles/@yarnpkg/plugin-angular.dev.js` is not minified. This is useful when debugging the plugin, as it keeps error stacktraces readable and it allows for easier step-through debugging via the Chrome inspector.The patchfiles are zipped and included in the `src/patches` folder. Use `yarn generate-patches` before `yarn build` to update these zipped patches.
## License
See LICENSE.md