/gravitee-portal-webui

Gravitee.io - API Management - Developer Portal

Primary LanguageTypeScript

Gravitee.io Portal

This project was generated with Angular CLI version 9.1.1.

Install

  • Install nodejs LTS (v12.18.4), it comes with npm

  • Install the Angular CLI

npm install -g @angular/cli
  • Then install node modules with:

npm install

Development server

Run npm run serve for a dev server. Navigate to http://localhost:4100/. The app will automatically reload if you change any of the source files.

Code scaffolding

Run ng generate component component-name to generate a new component. You can also use ng generate directive|pipe|service|class|guard|interface|enum|module.

Build

Run npm run build to build the project. The build artifacts will be stored in the dist/ directory. Use the npm run build:prod for a production build. Use the npm run serve:prod flag for a production build.

Running unit tests

Run npm run test to execute the unit tests via Jest.

Running end-to-end tests

Run npm run e2e to execute the end-to-end tests via Protractor.

Further help

To get more help on the Angular CLI use ng help or go check out the Angular CLI README.

About dependencies

This project use project Gravitee UI Components. If you want to develop in parallel, you can clone repository and link to project.

git clone git@github.com:gravitee-io/gravitee-ui-components.git
pushd gravitee-ui-components
npm run generate:dist
npm link
popd

pushd gravitee-portal-webui
npm link @gravitee/ui-components
popd

This project use project openapi-generator to generate a client sdk with openapi file. If you want to generate the client, run npm run update:sdk

Important
Don’t forget to fix generation BUG for files:
  • api/analytics.service.ts

  • api/application.service.ts

  • api/api.ts

Review

If you want review a pull request with changes on Gravitee UI Components dependency, you can use scripts/install.sh for automatic installation of branch with same name. Don’t forget to reset your package.json and package-lock.json after reviewing.

i18n

This project use the internationalization (i18n) library for Angular http://www.ngx-translate.com

If you want extract translatable strings and merges with existing if the JSON file already exists, run:

npm run generate:i18n

Start in production mode

If you want to test the deliverable in production mode :

npm run build:prod
npm run serve:prod