DashboardSupportWelcome

👤 USER DOCS

Getting Started

Daily Operations

Shift Workspace & TasksPre-Shift SetupLine-Up CardsShift ReportsForms

Staff & Locations

Staff SchedulingManaging Locations

Oversight

Manager ReportsAnalyticsPre-Shift & Compliance

Incidents & Feedback

Incident ReportingAnonymous FeedbackMessages & Announcements

AI & Settings

AI ChatgearApp Settings

Administration

Dashboard & OnboardingAdmin

⚙️ DEVELOPER DOCS

Getting Started

Getting StartedDevelopmentDeployment Guide

Architecture

Architecture OverviewData FlowArchitecture Decision Records

Core Domain

Core DomainDatabase ReferenceLocations DomainAuth & RBACScheduling DomainReports DomainIncidents DomainNotifications DomainAudit Log & OptimizationDesign Audit Findings

Frontend

Frontend ArchitectureFormsLoading SkeletonsComponentsPWA & NotificationsimageScreenshots

API Reference

API Reference

Endpoints

POS Sales APIOptimization Data APISchedule Shifts APIEmployee Export APIReports APIIncidents APIAI Chat APIPush Notifications APIWebhooks APICron API

Contributing

ContributingcodeCode Examples

Security

Security & Compliance
Danvas IconDanvas
Danvas IconDanvas

App Settings

User settings and notification preferences in Danvas

Danvas provides user-configurable settings for notifications, profile, and PWA installation.

Profile Settings

Access via the user menu in the top-right corner.

SettingDescription
Display NameYour name shown to other users
EmailFrom Clerk, read-only
PhotoAvatar from Clerk
Roleadmin or member, set by admin

Push Notifications

Subscribing

  1. Go to Settings → Push Notifications
  2. Click "Enable Notifications"
  3. Browser will prompt for permission
  4. Subscription saved to database automatically

Notification Preferences

CategoryDescription
New FormsWhen forms are submitted to your locations
IncidentsAlert updates for incidents you've created
ComplianceReminders for upcoming shifts
ChatMessages in your Matrix rooms

Sending Test Notifications

From Settings → Push Notifications:

  1. Click "Send Test Notification"
  2. Verify receipt on your devices
  3. Troubleshoot if not received

Unsubscribing

  1. Go to Settings → Push Notifications
  2. Click "Disable Notifications"
  3. Subscription removed from database

PWA Installation

Danvas is a Progressive Web App (PWA).

AI Chat

Ask plain-English questions about your operational data

Dashboard & Onboarding

Role-based dashboards and first-time user setup

On this page

Profile SettingsPush NotificationsSubscribingNotification PreferencesSending Test NotificationsUnsubscribingPWA InstallationInstall on MobileInstall on DesktopUninstalling PWAAppearanceSecuritySession TimeoutImpersonation (Admins Only)Two-Factor AuthenticationRelated Files

Install on Mobile

  1. Open Danvas in mobile Safari/Chrome
  2. Tap "Add to Home Screen" in share menu
  3. Confirm installation
  4. App appears with other apps

Install on Desktop

  1. Open Danvas in Chrome/Edge
  2. Click install icon in address bar
  3. Or: Settings → "Install Danvas"

Uninstalling PWA

  • iOS: Long-press icon → Remove from Home Screen
  • Android: Long-press → App info → Uninstall
  • Desktop: Right-click icon → Uninstall

Appearance

Dark/light mode follows your system preference by default. To override:

  1. Settings → Appearance
  2. Select: System, Light, or Dark
  3. Preference saved to localStorage

Security

Session Timeout

Clerk handles session management. Sessions expire after the configured duration in Clerk dashboard.

Impersonation (Admins Only)

Admins can impersonate users for debugging:

  1. Admin → Users → Impersonate icon
  2. Banner shows "Impersonating [Name]"
  3. Click "Exit Impersonation" to return

Two-Factor Authentication

Managed through Clerk's authentication settings. Enable via Clerk dashboard for enhanced security.

Related Files

FilePurpose
apps/app/src/app/(authenticated)/settings/settings-client.tsxSettings page UI
apps/app/src/app/api/push/subscribe/route.tsPush subscription endpoint
apps/app/src/app/api/push/send/route.tsAdmin send endpoint
apps/app/src/app/sw.tsService worker for push handling