Case study · community-matched migrant support · SwiftUI prototype

MigrantConnect

Community-matched support for new migrants.

A solo-built SwiftUI prototype evolved from the inTouch Lean UX foundation to help new migrants find relevant mentors, AI-guided help, rental support, and legal guidance through language, community, and location context.

Three MigrantConnect app screens: Home, Mentor Booking, and AI Legal Assistant

The UX insight

New migrants do not only need information. They need support that feels trusted, local, culturally familiar, and easy to act on.

Matching logic

Context routes support, instead of collecting profile data.

Language+ Country / community+ Location Matched support

Role · Phase 1

Team contributor · Lean UX research

Role · Phase 2

Solo designer + Swift/Xcode developer

Tools

Figma · Xcode · SwiftUI · MapKit · PhotosUI

Deliverables

31 screens · 53 Swift · 33 captures · 1:48 demo

Year

2024 → 2026

The product Solo project · designed + built · 2026

MigrantConnect — a solo iOS build, end-to-end.

MigrantConnect is my own design and my own Swift/Xcode implementation. UX, UI, code — all me. 31 Figma screens, 53 Swift files across 8 modules, MapKit + PhotosUI integration, 33 simulator runtime screenshots, and a 1 min 48 sec demo video.

The Xcode project (53 Swift files) opens in Xcode 15+ — public GitHub repo link coming soon.

My role · solo

Solo project — UX, UI, Swift/Xcode all by me. Verified at the file level: I authored the Xcode project; I captured all 33 simulator screenshots within a 7-minute window on 2026-05-27; I designed all 31 Figma screens and the 2 design-system boards. No teammates contributed to this codebase or design file.

§6.8 · Hi-fi gallery · onboarding

Onboarding — Welcome to Profile Setup

The first impression of the app: a calm Welcome screen, three-step sign-up, and a profile-setup card that lets new migrants land softly.

Onboarding role

Make the first session feel calm, not bureaucratic. The welcome and profile setup screens collect only the context needed to route support: identity basics, language, nationality, and location.

First impressionProfile contextLow-pressure setup
§6.8 · Hi-fi gallery · mentorship (largest module)

Mentor flow — the centrepiece

Mentor Matching is the largest module in the Xcode project (15 Swift files). The flow proves the core UX: match by community context, review trust signals, book time, continue in chat, and confirm next steps.

§6.8 · Hi-fi gallery · legal

Legal Consultation flow

Two surfaces: a structured legal-consultation form and an AI Legal Assistant — explicitly disclosed as an AI-assisted flow, not a human-staffed legal service.

§6.6 · Design system — real exports from the MigrantConnect Figma file

Token sheets that drive the 31 screens — and the Swift code.

Two real exports from the Figma file: a colour-token board and a typography board. These tokens are referenced in code by colour+hex.swift inside the OnBoarding module — proving the Swift codebase uses the same palette as the design.

MigrantConnect colour-token board exported from Figma
Colour tokens · Color Tokens.png
MigrantConnect typography board exported from Figma
Typography · Typography.png

Source · Migrant connect figma files / Color Tokens.png · Typography.png — real exports from the live Figma file.

§6.6B · Component primitives

Small UI decisions that make the app feel usable.

The app is not just screens. It has a repeatable product grammar: chips for preference filtering, cards for mentor/rental choices, rows for scanning, and message bubbles for continuity.

Preference filters

Chip

Language · country · location
Decision surfaces

Card

mentor / rental / legal
Clear next action

Primary button

book · confirm · submit
Scan + compare

List row

mentor and message lists
Support continuity

Chat bubble

mentor + AI conversations
Why this product is different

It is not a directory. It is a matching system for trust.

MigrantConnect asks for language, country/community background, and location because settlement support works better when it feels culturally relevant, local, and human. The app then routes users toward mentors, AI-guided first steps, rental support, legal guidance, and ongoing messaging.

Language

Reduces communication anxiety.

Country / community

Supports culturally familiar mentor matching.

Location

Makes help local and practical.

AI first step

Lets users ask low-pressure questions before contacting someone.

§2C · Target user + matching logic

Built around trust signals, not generic directories.

The key UX move is filtering help by language, country/community context, location, and immediate support need. That turns onboarding into a matching system for mentors, rental guidance, legal help, and AI-backed support.

Reconstructed persona

New migrant seeking local guidance

Needs culturally familiar support, clear next steps, and trusted people who understand the local system.

Language comfortCommunity trust
Product logic

Language + community + location

These inputs make the product feel local before the user has to search. The system can surface relevant mentors and guidance faster.

AI assistant backup
The problem

The UX problem: support existed, but it was not matched to people’s language, community, or location.

The inTouch research phase showed that early settlement is not just an information problem. New migrants face emotional isolation, untrusted guidance, language barriers, legal uncertainty, and rental risk while jumping between WhatsApp groups, government PDFs, classified apps, and word-of-mouth. MigrantConnect turns that fragmentation into a guided, community-based mobile journey.

Pain points

Emotional isolationUntrusted guidanceLegal-process anxietyRental-scam riskMulti-app fatigueLanguage barriers
Phase 1 Group project · 5 sprints · 2024

Phase 1: inTouch research foundation

The project began as a group Lean UX concept about new immigrants finding experienced-immigrant support. For the portfolio version, this research foundation is compressed into one evidence strip so the solo MigrantConnect execution stays front and centre.

§4.5 · Five-sprint Lean UX evidence

Five sprints of research, testing, and iteration.

Each sprint folder contains screenshots, photos, and Abhay’s individual reflection PDF. This section shows the evidence trail behind the group Lean UX foundation, not a solo claim.

01

Hypothesis

Four testable hypotheses, each tied to a success measure (e.g. mentor matching → time-to-settle).

02

Usability

In-app guide study · structured questions.

03

Iteration

Test → refine → test.

04

Competitors

Benchmarked Facebook & Telegram. Gap: scattered info, generic, unverified trust.

05

Peer feedback

Implemented / Not table · final retro.

From research to execution

I took the inTouch foundation and re-scoped it into a five-area iOS product I could own end-to-end.

inTouch’s hypothesis was tightly scoped: connect new immigrants with experienced-immigrant volunteers. MigrantConnect goes further — five product areas (mentorship, legal consultation, essential rentals, in-app messaging, account) that together cover the practical and emotional friction of the first six months. Phase 2 is fully my own design and fully my own SwiftUI/Xcode build.

2024 · Aug–Nov

Phase 1 — inTouch (Team)

5 Lean UX sprints. Hypothesis, usability testing, iteration, peer review.

2024 → 2026

Re-scoping (Solo)

Used Phase 1 research foundation to define a 5-area product surface.

2026 · May

Phase 2 — MigrantConnect (Solo)

Solo Figma (31 screens) + solo SwiftUI build (53 Swift files, 8 modules).

§6.3 · Core user journey

One guided journey from uncertainty to trusted support.

The final flow is intentionally simple: ask for the user context that matters, route them to relevant community support, then keep practical help available through mentor, legal, rental, messaging, and account surfaces.

01

Profile context

Language, country/community, and location give the product enough context to make support feel relevant.

02

Matched support

The app routes users toward mentors and local guidance instead of a generic directory.

03

Mentor booking

Users can book with community-relevant mentors and continue through chat or feedback.

04

Legal + rental help

AI legal first step and rental flows reduce anxiety around high-risk settlement tasks.

05

Ongoing support

Inbox, account, FAQ, and settings keep support accessible after the first action.

§6.4 · Lo-fi sketches · real · solo · before Figma

Before Figma — brainstorm + hand-drawn wireframes.

Seven of my own hand-drawn sketches that pre-date the Figma file. The first three are brainstorming exercises that explored the problem space and converged on a mentorship-led concept. The next four are paper wireframes for the Mentor Booking flow — drawn before any pixel went down in Figma.

Real artefacts · before Figma

Evidence before pixels.

These sketches are kept because they prove process: divergent problem exploration, convergence on mentorship, and early booking-flow thinking before the final SwiftUI prototype existed.

Why it matters

A reviewer can see the design did not begin as polished screens. It moved from evidence to structure to implementation.

A · Ideation evidence

From open problem space to mentorship direction

Three hand-drawn brainstorm sketches exploring migrant-support ideas
01 · Open brainstorm

Surveying the migrant-support landscape

Community meetups · English learning resources · job fair · social media groups · online forums · support groups · mentorship programs. Highlighted (pink) — the framing prompt: “Migrants face challenges when integrating in new society.”

02 · Diverging ideas

What kind of intervention?

Associate with healthcare apps · support groups for migrants · create big-ups online or offline · have meet-ups and listening events. Each note a candidate response.

03 · Converging

Settling on the mentorship lens

“Mentorship programs” placed at the centre. Other notes orbit it — mobile app for migrants, free mentorship events, person-to-person interaction, whatsapp/social groups of experienced migrants. The product concept is starting to take shape.

B · Paper wireframes

Early booking-flow structure before Figma

Hand-drawn wireframe — Mentor ListWF · 01

Mentor List

Search box at top · Mentors heading · 4 mentor cards with Picture, Name, Specialty, Rating, “Book Mentor” · bottom nav: Home · Menu · Inbox · Account · Rental · LegalAID. Maps to screen 07 — Mentor List.

Hand-drawn wireframe — Mentor Detail / ConfirmWF · 02

Mentor Detail / Confirm

Back button · Picture of Mentor · Name (Choose) · prompt: “We might need more info to move forward” · “Do you want to move ahead?” → Submit / Cancel. Maps to screens 08/11.

Hand-drawn wireframe — ID Verification uploadWF · 03

ID Verification (upload)

“ID Verification — Choose ONE:” Passport · Medicare ID · Drivers Licence · Upload button · “We verify and soon you connect with the mentor.” Maps to the upload step in screen 09 — Mentor Booking.

Hand-drawn wireframe — Session-type queryWF · 04

Session-type query

Back arrow · “Your Query” · Online / Offline toggle. Maps to the session-type toggle in screen 09 — Mentor Booking.

All seven sketches are my own — drawn by hand, photographed unedited. Three brainstorms (ideation phase, exploring the migrant-support problem space). Four hand-drawn wireframes (Mentor Booking flow, drawn before any pixel went down in Figma). Source files: IMG_6451, 6455, 6456, 6521, 6522, 6523, 6524.HEIC.

§6.5 · Digital wireframes · mentor booking flow

From paper to pixel — the same flow, structured.

After the paper sketches, I would normally produce digital wireframes before jumping to high-fidelity. In Phase 2 I skipped that step — I went straight from the paper sketches above into Figma high-fi. To show what a clean wireframe pass looks like in my hand, I rebuilt the four-screen Mentor Booking flow as proper low-fi structure: search bar → list → detail → upload → confirmation. Same screen anatomy as the final, fewer decisions per element.

Wireframe — Mentor ListMentor ListScreen 07
Wireframe — Mentor DetailMentor DetailScreen 08
Wireframe — Mentor BookingMentor BookingScreen 09
Wireframe — Booking ConfirmationBooking ConfirmationScreen 11

Reconstructed for portfolio · From the four paper wireframes above. Same anatomy, drawn cleanly in Figma to communicate the underlying interaction logic of the Mentor Booking flow (the largest module · 15 Swift files).

§6.8 · Implementation · SwiftUI / Xcode · solo

The strongest proof: I translated the design into a working SwiftUI prototype.

Phase 2 is the differentiator: 53 Swift files across 8 modules, MapKit and PhotosUI integrations, 33 simulator captures, and a 1:48 demo video. This section moves earlier because it proves the work is not just polished screens.

4 Swift

AppEntry & global state

Appstate · Migrant_connectApp · RootView · user
5 Swift

OnBoarding

welcomeview · Loginview · Signupview · ProfileSetup · colour+hex
4 Swift

Navigation & tabs

Tab structure · Home · More tab
15 Swift · largest

Mentorship

MentorList · Detail · Booking · Chat · Feedback · MapPin · MapKit
12 Swift

Essential Rentals

Housing · Vehicles · Tech · Detail · Booking · Manager
6 Swift

Inbox Messaging

Inbox · Message detail · message bubbles
3 Swift

Legal Consultation

Consultation · AI Assistant · Request detail
4 Swift

Placeholder Pages

Account · Edit Profile · FAQ · Search

Running on iOS Simulator · 5 of 33

Five MigrantConnect screens running on the iOS Simulator

Source · SCREENSHOTS FOR MIGRANTCONNECT/ · 33 captures total, all dated 2026-05-27 within a 7-minute window.

Real Swift code · Migrant_connectApp.swift

Migrant_connectApp.swift
// MigrantConnect · iOS · solo build
import SwiftUI
import MapKit

@main
struct Migrant_connectApp: App {
  @StateObject var appState = AppState()
  var body: some Scene {
    WindowGroup {
      RootView()
        .environmentObject(appState)
    }
  }
}
§5B · How to view · Figma prototype · demo video · Xcode

Verification pack: Figma, demo, and source.

Figma logo 01 · Figma prototype

Open the live Figma file

All 31 designed screens, design-system boards, and prototyping connections are in the live Figma file. Click through onboarding → mentor flow → rentals → legal → inbox → settings.

figma.com/design/wNhroeTnMifzvzGxUHAOzv Open Figma →
Play 02 · Demo video (1:48)

Watch the running iOS app

A 1 min 48 sec walkthrough of the SwiftUI app running on the iOS Simulator. Captured in the same 7-minute window as the 33 simulator screenshots above.

Abhay App video.mp4 · 159 MB Watch · 1:48
Xcode 03 · Xcode / SwiftUI

Run the source yourself

53 Swift files across 8 modules · MapKit + PhotosUI · SwiftUI views. Open in Xcode 15+ and run on iOS Simulator (iPhone 14 Pro / 15 Pro). 33 captures above are from this exact build.

github.com/abhay/MigrantConnect View on GitHub → Repo link coming soon.
§7 · Outcome — what got built

Built as a high-fidelity solo prototype — credible, verifiable, and honestly scoped.

31Figma screens
53Swift files across 8 modules
33Simulator runtime captures
1:48Demo video walkthrough
2Native iOS integrations · MapKit · PhotosUI
5Product areas covered end-to-end
Scope — kept honest

This is not claimed as a shipped App Store product, TestFlight beta, or live-service launch. The claim is specific: a research-backed high-fidelity iOS concept, designed in Figma and implemented as a solo SwiftUI/Xcode prototype.

§8 · Learning

What this taught me.

Cutting, not adding, made the product.

Translating Phase 1 group research into a Phase 2 solo build forced clearer MVP scoping. The five-area scope (mentor / rental / legal / messaging / account) is the result of cutting candidate features, not stacking them.

Code surfaces design decisions Figma hides.

Building the SwiftUI implementation alongside Figma surfaced things pure-design work would miss. Native MapKit constraints in the address-search flow informed the final UI of “13 — Find Address.png” — the design changed because the code told me what was honest.

Code structure mirrors interaction coupling.

Mentorship was the largest Xcode module (15 Swift files) because chat, booking, and feedback are three tightly-coupled flows. Recognising this in code clarified the same coupling in the design.

§9 · Scope clarity

Strong because it is specific about what is proven.

The case study sells capability without pretending the app shipped publicly. The evidence is research-backed concept work, Figma UI systems, a working SwiftUI prototype, simulator captures, and demo-video proof.

Foundation

Group research foundation

inTouch Lean UX phase informed the migrant-support problem space.

Ownership

Solo Figma + SwiftUI execution

MigrantConnect Phase 2 was individually implemented in Xcode/SwiftUI.

Boundary

Not claimed

No App Store launch, live user metrics, or shipped business outcome is claimed.