arrow_back Back to Projects Get in Touch

Case Study · Mobile App

Joey

A mobile app connecting tradesworkers with homeowners using AI to simplify hiring, remove common barriers, and create more equitable access to work in the trades.

Role
Full-Stack Developer
Timeline
Sept – Dec 2025
Platform
iOS & Android
Stack
React Native Expo Supabase Cloudinary Cloudflare Workers Gemini AI TypeScript
Joey – Hop to it.
01

Purpose & Context

Joey was developed as a four-month academic project focused on exploring how AI can help address inequality and discrimination in the trades, especially for women and other underrepresented groups. Instead of trying to improve existing workplace systems, the project focused on giving workers a way to find jobs directly, without relying on employers who may introduce bias.

The goal was to create a platform that increases worker independence, expands access to opportunities, and supports more equitable hiring outcomes. The app reduces the need for back-and-forth communication by helping users clearly define problems, understand what needs to be done, and match with the right people more quickly.

The app is designed to make hiring more efficient while creating a fairer and more accessible experience for both workers and clients, especially for those who may face barriers in traditional systems.

Joey App Purpose & Context
Joey App Purpose & Context
02

Market Research

Research showed that while immigrants and women are a growing part of the trades workforce, they often face challenges such as discrimination, unsafe conditions, and limited opportunities for advancement. At the same time, there is a strong demand for tradesworkers in Canada, with immigrants expected to fill a large share of future job openings.

This gap between demand and fair access highlights the need for tools that better support workers while helping employers and homeowners find reliable help.

Market Research Insights
Market Research Insights
04

Competitor Analysis

Existing platforms like Jiffy and HomeStars reveal key limitations in how trades services are currently managed. Jiffy places workers within its own system, which can limit their flexibility and independence, while HomeStars relies on a bidding process that can be time-consuming and inconsistent.

Neither platform uses AI to simplify the process, improve communication, or better match workers with the right jobs, creating a strong opportunity for Joey to stand out by offering a more streamlined and user-focused experience.

Competitive Landscape
Competitive Landscape
05

Feature List

Joey uses AI to make both onboarding and job posting more straightforward and accessible. Workers can upload their certifications and documents, which the system helps review and verify to build trust with clients.

Homeowners can take a photo of a problem, and the app will identify the issue, generate a clear job description, and recommend suitable tradesworkers based on their experience.

AI-Leveraged Job Listing Creation Flow
AI-Leveraged Job Listing Creation Flow
06

Low & High Fidelity Wireframes

Wireframes were created using insights from research, with a focus on making the app easy to understand for users with different levels of technical experience. The design emphasizes minimalistic design, usability, and user-friendly elements that users will be familiar with.

High-fidelity prototypes refined these ideas into a polished interface that integrates AI features in a way that feels natural and easy to use.

Worker Onboarding Prototype Screens
Worker Onboarding Prototype Screens
07

Design System

The design system was built by the team's designers and handed off as a Figma component library. RN Reusables mapped the Figma primitives to React Native components, keeping visual consistency without rebuilding common UI from scratch.

Design System

Warm, accessible,

and consistently applied.

The design system — built by the team's designers — was handed off as a Figma component library. RN Reusables mapped the Figma primitives to React Native components, keeping visual consistency without rebuilding common UI from scratch.

Colour Palette
Joey Orange
#F7931E
Joey Navy
#1a1f4e
Light Beige
#faf8f5
Portfolio Blue
#2b3990
Pale Orange
#fff4e6
Inner Light
#f5c49a
Dev Accessibility Checklist
  • AA 4.5:1 contrast ratio enforced on all text — checked against Figma specs
  • 44px Minimum touchable area on all interactive elements (RN Reusables default)
  • Label accessibilityLabel prop on all Touchable and Icon components
  • SR Screen reader tested on iOS VoiceOver for core flows
  • Offline Error boundaries and offline states for all network-dependent screens
Joey the Mascot
Kangaroo character used across onboarding, empty states, and loading screens to keep the tone approachable.
08

Generative AI Research

To power features like generating job descriptions from photos and scanning worker documents, Joey required an AI that could handle both image recognition and text in a single system. Many providers either focused mainly on text or required combining multiple services, which added complexity and cost.

Google Gemini stood out because its free tier supports both image and text together, making it easy to prototype and build without additional integration work. While not a complete long-term solution, its strong multimodal capabilities and generous free usage made it the best choice for Joey's initial development.

Generative AI Provider Comparison
Generative AI Provider Comparison
09

Proxy Server Research

To support secure communication between the front-end and AI services, different hosting platforms were evaluated based on cost, ease of use, and performance. Many options required a credit card to access free tiers, needed additional setup like a domain name and SSL certificate, or had limitations such as slow performance or cold starts after inactivity.

Cloudflare Workers stood out due to its generous free tier, no credit card requirement, and always-on serverless model, making it well-suited for handling lightweight proxy requests. Although it required adapting to a non-traditional server setup, its performance and simplicity made it the best fit for Joey's needs.

Proxy Server Hosting Platform Comparison
Proxy Server Hosting Platform Comparison
10

Back-End Development

The back-end uses Supabase to securely manage user accounts, store data, and handle authentication, while Cloudinary was used for storing user images and videos for worker portfolios and job listings. A Cloudflare Worker was used as a proxy server to manage requests such as image uploads and communication with AI services in real time.

Gemini was integrated to analyze images, generate summaries, and automatically create job listings, as well as validating worker documents like certificates and insurances.

Backend Architecture
Backend Architecture
11

Front-End Development

The front-end was built using React Native and Expo to create a consistent and responsive mobile experience across devices. The React Native Reusables component library was used to maintain consistency in design and speed up development by allowing shared UI elements across different screens.

Expo Go was used for testing, particularly to quickly iterate on and validate camera functionality for capturing images used in job listings.

Front-End Implementation
Front-End Implementation
12

The Finished Product

The final product is a functional prototype that demonstrates how AI can support both tradesworkers and homeowners throughout the process. Workers can create profiles with verified credentials, helping build trust and credibility, while homeowners can generate job listings quickly using images.

Overall, the app provides a simpler, more efficient way to connect people while improving accessibility within the trades industry.

Joey App Demo