This demo app is built with 4D Qodly Pro and is meant to inspire you or help you kickstart your own project.
wrkPass is an all-in-one telecommuting solution designed to streamline the coordination of remote, hybrid, and onsite work. The application allows employees to declare their work status, schedule meetings that match their availability mode, and maintain fluid communication between teams and managers. It simplifies workforce organization and ensures smooth collaboration across distributed environments.
-
Interactive dashboard for viewing and managing work statuses
-
Dedicated pages for creating, viewing, and managing meetings

-
Ability for users to declare their current work mode: Remote, Hybrid, or Onsite

-
Meeting management with filtering by work status
-
Managers can view and manage their team’s statuses and meetings

-
Employees can view their own status history and related meetings
-
Real-time overview for administrators to monitor organization-wide work modes

-
Secure, role-based access ensuring proper visibility and permissions
- Download the 4D version 21 LTS or later (the minimum required version 4D 21 LTS): Product Download
- Or the latest Beta version: Beta Program
- Follow activation steps: Installation Guide
- Clone or download this repository to your local machine. Need help? See Using GitHub with 4D.
- Open the project in 4D: Go to File > Open Project (More details here: Open a Project)
- Open Qodly Studio: Go to Design > Qodly Studio menu
- Run the application: Click Run to start the server and preview the app in your browser
This section explains exactly how to wire credentials and test the app (what to create, where to place files, and what the app already provides).
-
Microsoft Teams / Meetings: Yes — to enable automatic meeting creation, the application must be connected to Microsoft Azure / Microsoft Graph.
-
You need to register an application in Azure Active Directory and grant it permission to create Teams meetings on behalf of users or as an application.
-
Example (Microsoft Graph – Teams Meetings)
- Tenant ID:
your Azure tenant ID - Client ID:
your Azure application (client) ID - Client Secret:
your Azure application secret - Authority: https://login.microsoftonline.com/`tenant-id`
- Scope: https://graph.microsoft.com/.default
- Tenant ID:
-
- Credentials are configured via the Credentials page located in the Settings section.
- External service keys and secrets are stored and accessed through the database.
Provide Microsoft Graph credentials, then trigger a Teams meeting creation action to test the integration locally.
- The app includes a data generator
Project/Sources/Classes/data.4dmwhich creates sample users with known emails and passwords as well as related demo data. You can call it from the UI (home.WebForm) or runds.generateData()in the server console. - To test the login, you can use the following credentials:
- Email: john.doe@gmail.com
- Password: John
If you want to change the behavior or appearance of a specific feature, edit the files listed below.
-
Authentication / Login
- Code:
Project/Sources/Classes/DataStore.4dm(method:authentify) — handles login, session privileges and landing page routing. - UI:
Project/Sources/WebForms/login.WebForm
- Code:
-
Role-Based Access and Permissions
- Config:
Project/Sources/roles.json(role definitions). - Code:
Project/Sources/Classes/DataStore.4dm(authentication and access control methods).
- Config:
-
Microsoft Teams / Meetings Integration
- UI:
Project/Sources/WebForms/credentials.WebForm(credential setup). - Code:
Project/Sources/Classes/OAuthHandler.4dm(OAuth and API integration for Teams meetings).
- UI:
