Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/studiohyperdrive/ngx-tools
A mono-repo existing of several libraries containing tooling for Angular setups.
https://github.com/studiohyperdrive/ngx-tools
Last synced: about 1 month ago
JSON representation
A mono-repo existing of several libraries containing tooling for Angular setups.
- Host: GitHub
- URL: https://github.com/studiohyperdrive/ngx-tools
- Owner: studiohyperdrive
- License: mit
- Created: 2021-03-15T07:58:43.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2024-04-26T13:31:10.000Z (8 months ago)
- Last Synced: 2024-04-28T06:23:23.047Z (8 months ago)
- Language: TypeScript
- Size: 1.86 MB
- Stars: 4
- Watchers: 6
- Forks: 0
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- fucking-awesome-angular - ngx-tools - A mono-repo providing several of the Angular based packages created and maintained by the 🌎 [Studio Hyperdrive](studiohyperdrive.be/) team. (Table of contents / Third Party Components)
- awesome-angular - ngx-tools - A mono-repo providing several of the Angular based packages created and maintained by the [Studio Hyperdrive](https://studiohyperdrive.be/) team. (Table of contents / Third Party Components)
- trackawesomelist - ngx-tools (⭐9) - A mono-repo providing several of the Angular based packages created and maintained by the [Studio Hyperdrive](https://studiohyperdrive.be/) team. (Recently Updated / [Oct 13, 2024](/content/2024/10/13/README.md))
README
# 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](https://studiohyperdrive.be/) team.
## Installation
To setup this project, clone the repo and run `npm i` to install the dependencies.
### NPM
The available command are:
| command | runs |
| ------- | -------------------- |
| build | runs `nx build` |
| test | runs `nx test` |
| lint | runs `nx lint --fix` |## Versioning and build information
This package will follow a semver-like format, `major.minor.patch`, in which:
- `major`: Follows the Angular major version
- `minor`: Introduces new features and (potential) breaking changes
- `patch`: Introduces bugfixes and minor non-breaking changesIt is build with:
- Angular CLI : `17.0.4`
- Nx: `18.3.1`
- Angular: `17.0.4`
- nodejs: `18.14.0`
- npm: `9.3.1`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:
- utils (`@studiohyperdrive/ngx-utils`) :
- This library provides several independent utilities to facilitate common use-cases for users and developers.
- forms (`@studiohyperdrive/ngx-forms`):
- This library provides multiple utilities for complex form use-cases.
- store (`@studiohyperdrive/ngx-store`):
- This library provides several utils and abstractions to improve the Redux workflow
- table (`@studiohyperdrive/ngx-table`):
- This library provides a quick and easy template based table builder using the Angular CDK Table.
- i18n (`@studiohyperdrive/ngx-i18n`):
- This library provides a lazy-loaded modular approach to translations.
- cookies (`@studiohyperdrive/ngx-cookies`):
- This library provides a quick and easy wrapper for [CookieConsent V3](https://cookieconsent.orestbida.com).
- layout (`@studiohyperdrive/ngx-layout`):
- This library is a collection of Angular components related to layout.
- tour (`@studiohyperdrive/ngx-tour`):
- This library provides the tools to build a guided walkthrough of one or more pages.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-librariesAfter adding your library, make sure to check the karma set-up is consistent with other projects.
Check the following files:- `/angular.json`: `.architect.test`
- `/projects//tsconfig.spec.json`
- `/projects//karma.conf.js`
- `/projects//src/test.ts`When adding a playground for your lib, also make sure the project has at least one test or provide a placeholder.
### 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/[email protected]`.
4. Make a new production build of your library using `npm run build ` (Ivy is disable in tsconfig by default for this project).
5. Move to the dist folder of your library using `cd dist/`
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](https://studiohyperdrive.be).
Contributors:
- Axelle Vanden Eynde
- Benoît Dossoine
- [Denis Valcke](https://github.com/DenisValcke)
- [Iben Van de Veire](https://github.com/IbenTesara)
- [Jasper De Smet](https://github.com/jsprds)
- [Pieterjan Van Saet](https://github.com/HybridFox)
- [Wouter Heirstrate](https://github.com/WHeirstrate)
- [Abdurrahman Ekinci](https://github.com/ekincia)