Skip to main content

Architecture Overview

YUKI is split into two main parts:

  • Mobile app (app/) β€” Expo + Tamagui React Native app. Routes are powered by expo-router and UI by tamagui.
  • Backend sync (backend-sync/) β€” Minimal Node/Express service that processes email and finance parsing jobs and interacts with Supabase.

Key components

  • lib/ β€” shared integration helpers for Supabase, Gmail, calendar, Stripe/RevenueCat.
  • backend-sync/services β€” processors: financeProcessor, ticketProcessor.
  • utils/ β€” helper utilities for parsing and AI integration.

Data flow

  1. The mobile client authenticates users via Supabase and stores tokens in AsyncStorage.
  2. Periodically or on-demand, the mobile app uploads data or triggers backend-sync endpoints.
  3. backend-sync parses email/content and writes structured data into Supabase.

Deployment

  • Mobile: build with eas build or publish OTA updates via eas update.
  • Backend: deploy backend-sync to any Node hosting (Heroku, Railway, Vercel Serverless functions, AWS).