Skip to content

2025 · Full-Stack / Mobile

Ontario DECA Mobile Application

A full-stack Expo companion for provincial DECA competition delegates.

Mobile App · React Native / Expo

Ontario DECA mobile application walkthrough showing live schedule and maps.

The problem

Hundreds of high school delegates at an event the size of Ontario DECA miss schedule changes, can't navigate a huge convention centre, and have to stack 3 apps for QR check-ins, resources, and notifications. The event had no official companion.

The constraint

Convention-centre cellular is notoriously unreliable, so the core — schedules and venue maps — had to stay usable offline. And delegate friction is the killer: if an account isn't one-tap, or the map needs a signal, the app gets deleted. Every feature also had to live behind Expo Router's file-based tabs so the team could ship without a build config.

What I built

An Expo (React Native) app structured as (auth) + (tabs). Clerk handles student/adviser signup, sign-in, and password reset. Four tabs drive it: Home (upcoming events, a QR scanner for session check-ins), Schedule (filterable event categories: business, marketing, finance, hospitality), Maps (interactive venue maps via react-native-maps with a web fallback), and More (profile summary, awards schedule, and settings for notifications/appearance/language). AsyncStorage caches schedule/map data so the core survives no-signal zones, and a dev Node server + a PostgreSQL-backed version let the team develop against the event API.

The outcome

A feature-complete companion app for Ontario DECA Provincials — and an honest lesson in scope: the event cancelled before launch and it was archived, but it remains the reference for a large-event Expo build, from tab routing to offline-first scheduling.

Links