Intry

Intry App overview

Expo mobile client for residents — structure and Core integration.

Overview

tools/intry-app is the Expo / React Native application residents use to receive buzzer notifications, approve or deny visitors, and manage notification preferences.

Responsibilities

ConcernImplementation
AuthClerk (target) or legacy /registration/* → JWT Bearer
DevicesRegisters push tokens via /devices/* (Knock delivery)
Entry actions/access/* approve/deny matching telephony flow
Deep linksExpo linking for invite / universal links
Support chatChatwoot widget via Core bootstrap

Clerk Expo migration: docs/action-plans/intry-app-clerk-expo-migration.md.

Observability & analytics

ToolRole
EAS ObserveProduction startup/render performance (SDK 55, integrated)
SentryCrashes, errors, session replay on errors (app/_layout.tsx)
Vexo / PostHogProduct analytics
expo-observe (EAS Observe)Production perf — AppMetricsRoot + markAppInteractive() in _layout.tsx

Build & release

  • EAS profiles (eas.json) for dev, preview, and production.
  • API base URLs must match Core deployment (Railway + TLS).
  • Keep bundle identifiers aligned with APNs/FCM certificates for Knock push.

Local development

cd tools/intry-app
npm install
npx expo start

Point at dev Core or ngrok tunnel when testing end-to-end voice.


Last verified: 2026-06-21 (commit 293c4a7)

On this page