Engineering case study · 01

Live, invite-only admin portal · Resident app not yet released

Luxe PMS

Property-management suite for residential communities — staff web portal + resident mobile app.

PostgreSQL tables
48
tRPC sub-routers
20
native screens
35
Luxe resident app home screen with packages, maintenance, quick actions, and amenities
Luxe resident app package-tracking screen
Luxe resident app amenities screen

One TypeScript system

Luxe PMS is an end-to-end TypeScript monorepo built with Bun 1.3 and Turborepo. The staff portal uses TanStack Router and Vite, the resident app uses Expo SDK 56 and React Native 0.85, and the Hono 4 server exposes tRPC 11 on Bun.

The product spans 19 authenticated staff pages and 35 native screens across five tab groups, backed by 48 Drizzle PostgreSQL tables, 38 enums, and 20 tRPC sub-routers.

AI actions under the same rules

The Luxe Assistant uses Vercel AI SDK v6 with Gemini 2.5 Flash and nine tools for packages, maintenance, reservations, amenities, booking, and escalation.

Write tools delegate through appRouter.createCaller, so AI actions hit the same RBAC, validation, and transactions as the UI. Sessions are revalidated on every tool call, with a layered system prompt and prompt-injection guard.

State that stays safe

Realtime conversations stream over SSE with per-conversation pub/sub and an ownership-check security contract. Better Auth provides an organization model, property roles, building-level scoping, and invite-only access.

Amenity booking uses SELECT … FOR UPDATE inside a transaction before overlap and capacity checks. The e-signature module adds hash-chained audit events, SHA-256 document hashes, a sealed PDF, and a certificate of completion.

Private files use S3-compatible object storage (RustFS in production), with MIME allowlists, upload limits, and tiered presigned URLs.

Available for work

Build fast. Understand deeply. Keep shipping.

Available for full-stack product engineering work and freelance projects.