Skip to main content

Mobile Application

The bf_mobile crate implements the native mobile application using Tauri with the Lynx plugin. It provides a cross-platform experience for iOS and Android with native performance and platform-specific integrations.

Architecture

┌─────────────────────────────────────────────────────────────┐
│ Lynx UI Layer │
│ (React-like components) │
└─────────────────────────────────────────────────────────────┘


┌─────────────────────────────────────────────────────────────┐
│ Tauri Commands │
│ (40+ exposed functions for native access) │
└─────────────────────────────────────────────────────────────┘

┌───────────────┼───────────────┐
▼ ▼ ▼
┌───────────┐ ┌───────────┐ ┌───────────┐
│ Keychain/ │ │ Clerk │ │ OTA │
│ Keystore │ │ SDK │ │ Updates │
└───────────┘ └───────────┘ └───────────┘

Key Features

Native Credential Storage

Secure storage using platform-native APIs:

  • iOS: Keychain Services
  • Android: Android Keystore

Authentication Methods

Clerk SDK integration supports:

  • Email + OTP verification
  • Apple Sign In
  • Google Sign In
  • Passkey authentication

Over-the-Air Updates

A/B versioning strategy for zero-downtime updates:

  • Background download of new assets
  • Atomic switchover on next launch
  • Automatic rollback on corruption
  • Ed25519 signature verification

Tauri Commands

The app exposes 40+ commands for:

  • Property and device management
  • Tenant and guest operations
  • PIN code management
  • Notification preferences
  • Access log viewing
  • Energy monitoring
  • Settings and preferences

Documentation in This Section