Local Development

This guide covers running FindU components on your local machine.

Running Components

Web Dashboard

cd ~/findu/web_app
npm install
npm run dev

iOS App

cd ~/findu/ios_app
pod install
open ios_app.xcodeproj
  • Simulator: iPhone 15 Pro recommended
  • Device: Requires developer certificate
  • Backend: Points to dev Supabase

ML Engine

cd ~/findu/matching-algorithm
source venv/bin/activate
python api_v2/main.py

Supabase Local

cd ~/findu/supabase
supabase start

Common Development Tasks

Switching Environments

# Check current environment
./findu env status

# Switch to dev
./findu env switch dev

# Switch to prod (careful!)
./findu env switch prod

Running Tests

cd ~/findu/web_app
npm test               # Unit tests
npm run test:e2e      # E2E tests
npm run lint          # Linting
npm run typecheck     # TypeScript

Database Tasks

# Create a new migration
cd ~/findu/supabase
supabase migration new your_migration_name

# Apply migrations
supabase db push

# Reset database (dev only!)
supabase db reset

Debugging

Web Dashboard

  1. Chrome DevTools: Best for React debugging
  2. React DevTools: Install browser extension
  3. Network Tab: Monitor Supabase calls

iOS App

  1. Xcode Debugger: Breakpoints and variable inspection
  2. Console Logs: View in Xcode console
  3. Network Debugging: Use Proxyman or Charles

Database

  1. Supabase Dashboard: SQL editor and logs
  2. Table Editor: Visual data inspection
  3. Logs Explorer: Real-time query logs

Tips & Tricks

Use Multiple Terminals

Run each service in its own terminal for easy monitoring

Watch the Logs

Keep logs visible to catch errors early

Test on Real Devices

iOS simulator doesn’t catch all issues

Use Dev Data

Never test with production data locally

Troubleshooting

Next Steps