notebooks/components/crud-web-apps/common/frontend/kubeflow-common-lib/README.md

44 lines
1.5 KiB
Markdown

# Kubeflow Common Frontend Library
This code provides a common library of reusable Angular Components that can be used from our different Kubeflow web apps. This library aims to:
* Enforce a common UX throughout the different apps
* Reduce the development effort required to propagate changes to all the web apps
* Minimize the code duplication between our Kubeflow web apps
This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 8.3.20, which is required to build and run the unit tests.
## Local development
In order to use this library while developing locally your Angular app you will need to:
1. Build the `kubeflow` node module from this source code
2. Link the produced module to your global npm modules
3. Link the `kubeflow` module in the npm modules of you app
### Building the library locally
```bash
# build the npm module
npm run build
# might need sudo, depending on where you global folder lives
# https://nodejs.dev/learn/where-does-npm-install-the-packages
npm link dist/kubeflow
```
### Linking it to the app
```bash
cd ${APP_DIR}
npm install
npm link kubeflow
```
## Running unit tests
Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io).
## Contributor Guidelines
### Unit tests
1. Any new component added to this library should also include some basic unit tests
2. The unit tests should be passing at any point of time
### Git commits
Git commits that modify this code should be prefixed with `web-apps(front)`.