@froko/ng-essentials

    6.1.3 • Public • Published

    ng-essentials

    Adds better defaults to a new Angular application generated with the Angular-CLI. ng-essentials is heavily inspired by the following schematics:

    It includes many of the ideas of the following blog post, also written by Martin Hochel: Use React tools for better Angular apps.

    Usage

    This schematic uses the ng add command to add it's value to a new Angular application:

    ng add @froko/ng-essentials

    The above command does the following:

    • Updates all npm packages to their latest stable versions
    • Installs prettier for advanced code formatting
    • Replaces TsLint by EsLint
    • Adds Angular debugging support for Visual Studio Code
    • Adds formatting and linting support for saved files in Visual Studio Code
    • Adds common Visual Studio Code plugin recommendations
    • Adds an ENV_PROVIDERS configuration array with the current environment name and a base URL to the environment.ts and environment.prod.ts files and provides this array in the AppModules's providers array.
    • Removes e2e testing functionality with protractor. See below how to add a better alternative.
    • Formats the code with prettier after the installation
    • Lints the code and fixes issues after the installation

    ng-essentials comes with some configuration switches to add even more value:

    • --jest removes testing functionality with jasmine and karma and replaces it with jest using @angular-builders/jest.

    • --cypress adds e2e testing functionality with Cypress.io. Please note that ng e2e won't work anymore. Use npm run cypress or yarn cypress instead.

    • --husky installs husky which formats and lints staged files (pre-commit hook).

    This schematic also works with an empty Angular workspace, created with ng new app-name --createApplication=false.

    Adding a new library with jest support

    This schematic enhances the creation of a new library when the schematic was previously installed with the --jest option. By running

    ng generate lib myAwesomeLib

    it will delete the karma/jasmine configuration and add jest support for the new library as well.

    Adding a new application with jest support

    This schematic enhances the creation of a new application when the schematic was previously installed with the --jest option. By running

    ng generate app myAwesomeApp

    it will delete the karma/jasmine configuration and add jest support for the new application as well.

    Keywords

    Install

    npm i @froko/ng-essentials

    DownloadsWeekly Downloads

    23

    Version

    6.1.3

    License

    MIT

    Unpacked Size

    189 kB

    Total Files

    65

    Last publish

    Collaborators

    • froko