Home

Awesome

Studio Hyperdrive: Angular Tools (ngx-tools)

ngx-tools is a mono-repo providing several of the Angular based packages created and maintained by the Studio Hyperdrive team.

Installation

To setup this project, clone the repo and run npm i to install the dependencies.

NPM

The available command are:

commandruns
buildruns nx build
testruns nx test
lintruns nx lint --fix

Versioning and build information

This package will follow a semver-like format, major.minor.patch, in which:

It is build with:

For a complete list of packages and version check out the package.json file.

Concept

This repo contains general usage libraries for shd Angular projects. Those libraries are:

You can find detailed explanations in their respective README’s.

Contributions

Add a new library

To add a new library, consult the Angular CLI documentation: https://angular.dev/tools/libraries/creating-libraries

After adding your library, make sure to check the karma set-up is consistent with other projects.
Check the following files:

When adding a playground for your lib, also make sure the project has at least one test or provide a placeholder.

Contributing features/bug-fixes

In order to contribute to this repository you must:

  1. Start a new branch from master named either fix/PACKAGE/FEATURE-NAME or feat/PACKAGE/FEATURE-NAME.
  2. Commit all code regarding the fix or feature to this branch, but do not include a version bump. Your commit message should start with either fix(PACKAGE) or feat(PACKAGE) for a fix or feature respectively.
  3. Open a PR and add the correct package label, an enhancement or bug tag, the project and milestone.

In order to publish your contribution you must:

  1. Start a new branch from master named release/PACKAGE/VERSION-OF-YOUR-PACKAGE.
  2. Bump the version to the corresponding version of your branch in the package.json.
  3. Commit the version change using the following format: build(PACKAGE):vVERSION-OF-YOUR-PACKAGE
  4. Open a PR and add the correct package label, the publish tag, the project and the milestone.

Publish

The libraries in this project can be published to the npm registry. To do so follow these steps:

  1. In the library that you want to publish, bump the version in package & package-lock files.
  2. Commit the changes using the following convention: build(images): v1.0.0.
  3. Add a tag using the following convention: @studiohyperdrive/ngx-images@v1.0.0.
  4. Make a new production build of your library using npm run build <library> (Ivy is disable in tsconfig by default for this project).
  5. Move to the dist folder of your library using cd dist/angular/<library>
  6. Publish the package using npm publish
    a. If this is the first time publishing the library make sure to add the --access public flag.
    b. Make sure you are logged into npm and that you have been added to the @studiohyperdrive organisation.

Team

This bundle of tools has been created and is maintained by Studio Hyperdrive.

Contributors: