Skip to content

mohamedswe/b-link-case-study

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 

Repository files navigation

B-link — Brock University Student Portal

Live on Google Play · 10+ downloads · Updated Apr 2026

B-link Google Play Listing

What this is

B-link is a mobile app for Brock University students — a unified campus platform built with React Native (Expo) and deployed to both the Google Play Store and iOS App Store.

The app combines end-to-end encrypted messaging, a campus marketplace, event management, tutoring, and student housing into a single mobile experience. It requires a valid @brocku.ca email for access, ensuring a verified Brock University community.

I served as the senior/architect engineer on a 3-person team — owning the initial project architecture, iOS App Store compliance and deployment, the trust & safety infrastructure, and the core tutoring marketplace backend.

Store Listings

Google Play: B-link on Google Play iOS App Store: B-link on App Store

Architecture

React Native (Expo) Mobile App
  |-- Auth (login, register, email verification via @brocku.ca)
  |-- Events (create, browse, RSVP, co-host invitations)
  |-- Tutoring Marketplace (apply, request, sessions, reviews)
  |-- Listings / Marketplace (buy & sell textbooks, furniture, electronics)
  |-- End-to-End Encrypted Messaging (conversations, push notifications)
  |-- Profiles (user profiles, settings, data request handling)
  |-- Trust & Safety (blocking, reporting, profanity filter)
  v
FastAPI Backend
  |-- auth, events, tutors, listings, blocking, reports
  |-- profanity filter, content sanitization
  |-- tutor subscription sync + webhook reconciliation
  v
Supabase (PostgreSQL + Auth + Storage + Edge Functions)
  |-- 35+ migrations (schema evolution)
  |-- push notifications (Edge Functions)

Tech Stack

Mobile: React Native, Expo SDK 54, TypeScript Backend: Python, FastAPI, Pydantic, Supabase Infrastructure: Supabase (DB + Auth + Storage + Edge Functions), EAS (Expo Application Services) Deployment: Google Play Store + iOS App Store (via EAS), OTA updates

My Role & Contributions

Role: Architect Engineer Team: 3 engineers (me + 2 developers) Timeline: Dec 2025 – Apr 2026

I did not build every feature. My ownership concentrated on the architecture, the hardest infrastructure problems, and the systems where failure would mean real user harm.

1. Project Architecture & Initialization

I established the entire project from zero:

  • Scaffolded the full React Native app across 30+ screens (auth, events, tutoring, listings, messaging, profiles)
  • Set up the FastAPI backend with proper service/router separation
  • Designed the Supabase schema with 15+ initial migrations
  • Configured the Expo/EAS build pipeline
  • Wrote the technical specification document

Initial commit: 58 files, ~22,000 lines establishing the project skeleton, all major feature areas, and the backend API surface.

2. iOS App Store Compliance & Deployment

Taking a React Native app from development to the iOS App Store requires navigating Apple's compliance requirements. I owned this end-to-end:

  • Privacy manifests — declared all data collection, usage, and third-party SDKs per Apple requirements
  • Blocking/reporting system — Apple requires user safety features for apps with user-generated content. Built cross-cutting blocking across all content types (events, listings, tutors, conversations) and reporting infrastructure
  • Profanity/content filtering — server-side profanity detection and content sanitization across all user-generated inputs
  • EAS build pipeline — configured Expo Application Services for iOS builds, code signing, and distribution
  • OTA updates — over-the-air update infrastructure so fixes ship without App Store review cycles

3. Trust & Safety Infrastructure

A student app with messaging, marketplace transactions, and real identities needs real safety systems:

  • User blocking — cross-cutting block system that propagates across events, listings, tutor interactions, and conversations
  • Content reporting — report submission with categories, backend review routing
  • Profanity detection — server-side filter with test coverage
  • Content sanitization — input cleaning utilities shared across the backend
  • Brock email verification — @brocku.ca required, ensuring verified campus community

4. Tutoring Marketplace Backend

I built the core tutoring system backend:

  • Tutor applications — apply flow with course selection, qualifications, pricing
  • Tutor relationships — student-tutor matching with invitations and status tracking
  • Session logging — session records with metrics
  • Review system — tutor reviews with ratings
  • Course catalog — imported and structured Brock University's 4,796-course catalog

The backend involved 8 new database migrations and a service layer the other developers built the UI against.

5. Cross-Team Integration

With 3 developers in parallel (me on backend/architecture, another on Android frontend, another on UI):

  • Merged Android and iOS branches with conflict resolution
  • Maintained the shared API client that both platforms consumed
  • Kept database migrations ordered and compatible across feature branches

Why This Project Matters

B-link is not a toy app. It's live on Google Play with real users:

  • Real Brock University students with @brocku.ca verification
  • End-to-end encrypted messaging between users
  • Campus marketplace with photo listings
  • Event creation and co-hosting
  • Push notifications via Supabase Edge Functions
  • Cross-feature safety systems (blocking propagates everywhere)
  • Production deployment on both app stores

Team Attribution

Team: 3 engineers

  • Mohamed (me): Project architecture, iOS deployment, trust & safety, tutoring backend
  • Frontend developers (2): Android adaptation, UI polish, SEO/static site, subscription sync, day-to-day feature work

Privacy Note

The source code is in a private repository. This public case study describes architecture and engineering approach without exposing source code, secrets, or deployment credentials. Screenshots are from the public Google Play Store listing.

About

Technical Lead case study: React Native iOS app, trust & safety, tutoring marketplace, App Store deployment

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors