/placeos-ui

Primary LanguageTypeScript

PlaceOS Template User Interfaces

Bookings PROD Bookings DEV Bookings UAT
Catering PROD Catering DEV Catering UAT
Concierge PROD Concierge DEV Concierge UAT
Control PROD Control DEV Control UAT
Visitor Kiosk PROD Visitor Kiosk DEV Visitor Kiok UAT
Map Kiosk PROD Map Kiosk DEV Map Kiosk UAT
Workplace PROD Workplace DEV Workplace UAT

Setup

  1. Install NodeJS
  2. Run npm install in the root folder
  3. Run npm install --global @angular/cli to Install Angular CLI

Development

To run the dev server use the command nx serve <project> e.g. nx serve control

By default the dev web server proxies all requests to the set live system, if you wish to use a mock requests and systems press Ctrl + Alt/Option + Shift + M to reload the page in mock mode. To leave mock mode you can repeat the keypresses.

Compilation

Compile the application into static files using nx build <project> e.g. nx build bookings

The command takes the arguments --prod to minify the resulting build and --aot to compile the angular code using the angular Ahead of Time compiler.

Default application/runtime settings can be found in projects/<project>/app/settings.ts

Tests

Unit tests can be run using nx test <project> e.g. nx test kiosk

Integration tests can be run first starting up the webpack dev server with nx serve, setting mock to true in projects/<project>/app/settings.ts and running cypress with nx e2e <project>-e2e

Deployment

Github actions have been setup for creating build artifacts and deploying them to a standalone branch on this repository.

Each application has a seperate branch dedicated to each of it's build types.

Commits to the branch develop will produce development builds that are committed to the branches build/<project>/dev
Commits to the branch release/** will produce development builds that are committed to the branches build/<project>/uat. You should have only one release branch at a time and it should be kept inline with develop rather than worked on directly.
Commits to the branch master will produce a production build that is commited to the branch build/<project>/prod

Available Frontends

There are 7 available frontends for this client

  • bookings | Booking Panel user interface
  • catering | Interface for external caterers
  • concierge | Concierge / Front of House application
  • control | AV/Room Control application
  • kiosk | Internal building location kiosk UI
  • visitors | Internal building location kiosk UI
  • workplace | Staff Application