LogoLogo
  • PlaceOS Documentation
  • Overview
    • Key Concepts
      • Drivers
      • Interfaces
      • Modules
      • Settings
      • Systems
      • Triggers
      • Zones
    • Languages
      • Crystal
      • TypeScript
    • Protocols
      • MQTT
      • SAML
      • OAuth2
  • How To
    • Configure PlaceOS for Microsoft 365
      • Step 1: Room Calendar Access
        • Create Azure App Registration (Application Permissions)
        • Exchange Calendar Group
        • Limit Application Permissions
        • Configure PlaceOS Calendar Driver
      • Step 2: User Authentication & Calendar Access
        • Create a PlaceOS Authentication Source
        • Create Azure App Registration (Delegated Permissions)
        • Configure PlaceOS Authentication Source
        • Add User Login Redirects
      • Concierge Access
      • Troubleshooting
        • Blocked or Blacklisted IP Error
    • Configure PlaceOS for Google Workspace
      • Google Configuration
        • Create Google Cloud Project & Enable API
        • Configure Google Cloud Service Account
        • Add Google Workplace Permissions
        • Create Google Marketplace App (optional)
        • Google Workspace Service User (RBAC)
        • Configure Access to Google Resource Calendars
      • User Authentication
        • Create a PlaceOS Authentication Source for Google
        • Create Google Cloud OAuth2 Client App
        • Configure PlaceOS Auth Source for Google
        • Add User Login Redirects
    • Deployment
      • Deploy AWS Fargate on Modular CloudFormation Stacks
      • Deploy AWS Fargate on Nested CloudFormation Stacks
      • Writing Import Scripts
    • Analytics
      • MQTT Integration
    • Backoffice
      • Add a Domain to PlaceOS
      • Backoffice File Upload
      • Configure Staff API
      • Calendar Driver
      • Enable Sensor UI
      • Bookings Driver
      • Configure a webhook
    • Authentication
      • Azure B2C
        • Azure B2C Custom Policy Framework
        • Configure PlaceOS for Azure B2C
        • 365 Room Resources on Azure B2C
      • Configure SAML SSO
        • Configure SAML2 with AD FS
        • Configure SAML2 with Auth0
        • Configure SAML2 with Azure AD
        • Configure SAML2 with Google Workspace
      • Configure OAuth2 SSO
      • X-API Keys
      • Bearer tokens
    • Location Services
      • Location Services
      • Area Management
      • Discovering User Devices
      • Locating Users on a Network
      • People Finding with Cisco Meraki on PlaceOS
      • People Finding with Juniper Mist on PlaceOS
    • Notifications
      • Catering Orders
    • User Interfaces
      • Booking Panel App
      • Workplace App
      • Native Booking Panel App
      • Deploy a Frontend Interface
      • Microsoft Outlook Plugin
      • Configure Endpoint Auto Login
      • SVG Map Creation
      • Configuring a default UI
  • Tutorials
    • Setup a dev environment
    • Backend
      • Troubleshooting Backend Failures
      • Import Bookable Rooms
      • Writing A Driver
        • Testing drivers
        • ChatGPT / LLM Capabilities
          • Native GPT Plugins
      • Testing Internal Builds
    • Backoffice
      • Adding Drivers & Modules
      • Add Zone Structure
    • Common Configurations
      • Asset Manager
      • Catering
      • Locker Booking
      • Webex Instant Connect
      • Desk booking
      • Sensor Data Collection
        • Configure Kontakt IO
        • Configuring Meraki
        • Configuring DNA Spaces
      • Elevated Privileges
  • Reference
    • API
      • Real-time Websocket
      • Rest API
      • Staff API
    • Drivers
      • PlaceOS
        • Bookings
        • Staff API
        • Visitor Mailer
        • Lockers
      • Microsoft
        • Graph API
    • PlaceOS Skills
    • Privacy Policy
    • Recommended Products
    • Supported Integrations
    • System Architecture
    • System Functionality & Requirements
    • Infrastructure Requirements
    • Security Compliance
      • FAQ
      • GDPR
      • Security
    • Microsoft Azure Permissions
  • Glossary
  • 🎯PlaceOS Roadmap
  • 🆘PlaceOS Support
  • 👩‍💻PlaceOS Github
  • 📝PlaceOS Changelog
Powered by GitBook
On this page
  • CI/CD
  • Backoffice Setup
  • Add Repository
  • Configure Routing
  • Updating
Export as PDF
  1. How To
  2. User Interfaces

Deploy a Frontend Interface

How to deploy a frontend interface and add to PlaceOS

PreviousNative Booking Panel AppNextMicrosoft Outlook Plugin

Last updated 2 years ago

CI/CD

To work with PlaceOS frontend repositories must have build artifacts committed to a standalone repository or branch.

The repository already has CI/CD pipelines setup using GitHub Actions.

The repository follows these steps for the build pipeline:

  1. Commit made with changes to libs or an application(apps/<project>)

  2. Pipeline in GitHub Actions starts

  3. Install dependencies and build application(s)

  4. Commit build artifacts to associated branch. For example, a development build of workplace will be committed to build/workplace/dev

Backoffice Setup

Once a build has been created it can be added to Backoffice so that frontends service can pull down the interface.

Add Repository

  1. Navigate to the repositories page

Navigate to the repositories page

2. Add a new repository

  • Name should describe the UI

  • Folder name will be the path of the UI on the domain e.g. workplace would map to https://my.domain/workplace/

  • Repository is the URL of your git repository with the UI builds

  • Repository type must be Interface for the deployment of a UI

  • Branch is the build branch of the User Interface

Configure Routing

  1. You will need to register the new application on your domain.

    • Navigate to Domains

    • Select your application domain + Navigate to the applications tab + Press new Application

    • The login URL should be set to the location of your oauth-resp.html file from ts-client

After that you should be able to access your application at the URL https://my.domain/<folder>/.

Updating

Once the application is setup in Backoffice it should automatically pull any changes to the set branch every hour. If you to make a manual update there is a pull button in the about section of the repositories page.

Note that if you've set the commit on the repository not to be HEAD the automated pull feature will be turned off and the pull button will do nothing.

Add a new repository
Set repository to interface

Updating Interface
user-interfaces
user-interfaces
Press new Application
Navigate to Domains