James Coates

Computer Science student. Sydney, Australia.


← Back to projects

Apollo — iOS Tutoring Marketplace Platform

· James Coates

Apollo — iOS Tutoring Marketplace Platform

Apollo is a full-stack iOS tutoring marketplace platform designed to connect students with tutors through a map-centric interface. Built natively in Swift and backed by a Node.js/TypeScript infrastructure, the project integrates real-world payment processing via Stripe and is maintained under a production-grade CI/CD pipeline.

This is an active commercial venture — covering everything from technical architecture to business structuring, equity agreements, and operational coordination.


The Problem Being Solved

Existing tutoring platforms are predominantly web-first, list-based, and lack spatial context. For students seeking in-person tutoring, proximity and availability are the most important factors — yet current platforms bury this information in filters and text search.

Apollo reimagines this by placing the map at the centre of the product. Open the app and the first thing you see is a live view of available tutors near you, filterable by subject, availability, and rating.


Technical Architecture

Frontend — Native iOS (Swift / Xcode)

The entire frontend is built natively in Swift using the Xcode environment. Native development was chosen over cross-platform frameworks to ensure the smoothest possible iOS experience — particularly for the real-time map interface, which benefits significantly from direct access to MapKit and CoreLocation.

Key frontend features:

Backend — Node.js + TypeScript

The backend runs on a Node.js runtime with TypeScript enforcing strict type safety across the entire codebase. This combination provides the flexibility of JavaScript's ecosystem with the reliability of a strongly typed language at scale.

Backend architecture includes:

Payment Infrastructure — Stripe API

Full Stripe API integration handles all financial transactions within the platform. The payment architecture is designed for a marketplace model, which is considerably more complex than a standard payment flow.

Implementation details:

DevOps & Quality Assurance

From the outset, the project has been built with production standards in mind — not retrofitted later.

CI/CD Pipeline:

Testing:

Code Quality:


Business Structure

Apollo operates as a formal business venture. Key structural elements include:

The intersection of technical development and business operation has been one of the most valuable aspects of this project — building something real forces a different kind of thinking compared to personal projects.


Technical Challenges

Real-Time Map Scalability

Displaying live tutor locations on a map requires careful thought about query frequency, data freshness, and server load. The current implementation uses geographical bounding box queries to return only tutors within the visible map region, with debouncing on pan/zoom events to prevent query flooding.

Stripe Marketplace Complexity

Standard Stripe integrations are straightforward — marketplace payments are not. Implementing Connect accounts for tutors, managing onboarding verification, handling split payments, and building compliant refund logic required deep engagement with Stripe's documentation and a significant amount of testing against the sandbox environment.

Swift/TypeScript Integration

Keeping the iOS client and Node.js backend in sync — particularly around data models and API contracts — requires discipline. TypeScript's type system is leveraged to generate shared interface definitions that reduce the risk of client/server mismatches.


Technology Stack

Frontend:

Backend:

Payments:

DevOps:


Current Status

Apollo is in active development. The core booking flow, map interface, and payment infrastructure are functional. Current focus is on refining the tutor onboarding experience and preparing for a limited beta release.

This project represents the most technically ambitious work I've undertaken — combining mobile development, backend engineering, FinTech integration, and real business operation into a single product.


← Back to projects