Apis Core Package
The apis core package manages access control and basic singleton like services
The application uses the following technologies:
- typescript
- angular
- material design
For building and packaging
- webpack
- angular cli
For testing and code quality
- karma/jasmine
- protractor
- tslint
For scaffolding
- angular cli
Quick start
The development can happen with or without docker. (See Dockerfile for a container that runs the development application.)
Continous Integration and building/packaging is provided via tailored docker container using an image created from Dockerfile.build file.
Docker
Run Lint/test/build
$ docker-compose up
Development server
Run ng serve
for a dev server. Navigate to http://localhost:4200/
. The app will automatically reload if you change any of the source files.
If you run npm start
it works as ng server
but there are proxy settings
applied to that redicrect server requests to port 3000.
Code scaffolding
Run ng generate component component-name
to generate a new component. You can also use ng generate directive/pipe/service/class/module
.
Build
Run ng build
to build the project. The build artifacts will be stored in the dist/
directory. Use the -prod
flag for a production build.
Running unit tests
Run ng test
to execute the unit tests via Karma.
Running end-to-end tests
Run ng e2e
to execute the end-to-end tests via Protractor.
Before running the tests make sure you are serving the app via ng serve
.
Docker Intergration
There are docker files for different images:
- Dockerfile.build: Describes an image to actually run build steps (jshint, test, build-package)
-
Dockerfile.prod: Image that can be used to run the static page via nginx
- It listens on port 80
- exposes /var
Assets
The asset foulder is the place for files that are just plain-copied from source to dist. Assets hold
- internationalization data (if not build in etc)
- icons
- config data about end points, static items (created at build time etc)
License
see LICENSE file