Adding eslint
- In VScode extensions remove Tslint and install Eslint (exact extension name: dbaeumer.vscode-eslint)
- In a project root remove
tslint.json
- copy
.eslintrc.js
- run:
npm i -D eslint @typescript-eslint/parser @typescript-eslint/eslint-plugin eslint-plugin-jsdoc
- uninstall tslint, tslint-sonarts:
npm un tslint tslint-sonarts
There are Instant events and Delayed Events:
- Instant events (t <= 5 seconds) which are used frequently, like getting data for table. We confirm instant events and let them into EventBus.
- Delayed events (t >= 5 seconds) which are used rarely, like long calculations. User confirms them.
Environment | Database-Backend | Login | Shell | Nginx |
---|---|---|---|---|
Production | Real | Real | Yes | Yes |
Staging | Stage[1] | Stage | Yes | Yes |
Development | Local | Local | Yes | Yes |
Isolated | Local | None | No | No |
Solo | Mock[2] | None | No | No |
- As close to real as possbile, maybe even a copy with snapshots done periodically, to recover after tests or failures
- Solo is intended to check for visual feel only, thus microfrontend should be self sustained (no connections) and instead of calling to real backend should use mocks which might as well be used by tests.
The bussiness environment
Environment for regression tests after unit and integration tests are done; this environment should be set up just as production one: publically available for clients and our testing team to do regression tests
Same as production but set up locally for developing new features
Used for testing microfrontend alone but with connection to development backend/database
Used for writing initial view which does not require anything else in the environment. In order for it to work, mock services should conditionally injected.
cd launcher
and runnpm run watch
(assuming micro frontends were installed), which will start watch on: MaterialReceipts, Occupation, Personnel and Shell micro frontends.cd ReverseProxy
and run./nginx.exe
(which will start server on localhost:80) then control from other console using./nginx.exe -s stop
or./nginx.exe -s reload
cd <desired project>
npm i
skip if you have already installed everythingnpm run start
(it doesng serve
but with unique port)
cd installer
npm ci
to install same dependecy tree, without modifying anythingnpm run build
will buildnpm run start
will start script, follow instructions- currently shell and menu integration is not implemented (you have to manually ad to shell and menu)
- In backend database ApiGateway -> UserValidTokens -> set ALL entries' field IsDeleted to false
- In every frontend enable in environments/environment.ts change EnvironmentTypes enum to Development or higher (prod, stage)
- In backend database ApiGateway -> UserValidTokens -> set ALL entries' field IsDeleted to true
- In every frontend enable in environments/environment.ts change EnvironmentTypes enum to Isolated or lower