Newer
Older
[](https://opensource.org/licenses/MIT)
[](https://scm.cms.hu-berlin.de/iqb/testcenter-frontend)

Diese Angular-Programmierung ist die clientseitige Web-Anwendung für das Online-Testen des IQB. Über diesen Weg wird die Programmierung allen Interessierten zur Verfügung gestellt. Eine Anleitung zum Installieren und Konfigurieren wird schrittweise an dieser Stelle folgen..
This is the frontend of the IQB Testcenter application. It's written in Typescript using Angular 9.
You can find the backend [here](https://github.com/iqb-berlin/testcenter-backend).
The repository for a complete setup of the application can be found [here](https://github.com/iqb-berlin/testcenter-setup).
* [User's Manual](https://github.com/iqb-berlin/iqb-berlin.github.io/wiki/2-Testcenter)
* [List of replacable CustomText-Strings (l8n-like)](https://iqb-berlin.github.io/testcenter-frontend/custom-texts)
* [List of Group-Monitor's Superstates](https://iqb-berlin.github.io/testcenter-frontend/super-states)
* [List of Test-Modes](https://iqb-berlin.github.io/testcenter-frontend/test-mode)
* [List if Booklet Conifg Parameters](https://iqb-berlin.github.io/testcenter-frontend/booklet-config)
* [Compodoc Documentation of Modules, Classes etc.](https://iqb-berlin.github.io/testcenter-frontend/compodoc/)
All the necessary commands for running the application and starting the tests
can be found in the Makefile on the root directory.
###### Start and Stop the server
```
make run
make stop
```
###### The 2 types of tests can also be run separately.
```
make test-unit
make test-e2e
```
For local development you can copy the packages from the container to a local directory. Use the following command for this:
*For this to work the container has to have been created (not necessarily running).*
```
make copy-packages
```
To install new packages use:
```
make install-packages packages="<package-name> [<package-name> ...]"
```
If you leave out the argument all packages defined in package.json will be installed.
```
make install-packages
```
### Manual Compilation
#### Prerequisites
* node 12+
#### Compilation Steps
```
npm install
ng build --prod
```
Find the compiled app in src folder and open in Browser or serve with `ng serve`.
We are using ESLint with the base or [airbnb](https://www.npmjs.com/package/eslint-config-airbnb) with our [own rules](https://www.npmjs.com/package/@iqb/eslint-config) on top.
## Bug Reports
File bug reports, feature requests etc. [here](https://github.com/iqb-berlin/testcenter-frontend/issues).