Skip to content
Our Work

CASE STUDY

Prep Doctors

Three production-grade enterprise applications. 425,000+ lines of code. One developer. Six months.

425K+ LOC430+ API endpoints87 DB tables6 months

Prep Doctors is a dental exam preparation company operating across Canada, the United States, and Australia. They needed a unified software platform to manage their operations — from student enrollment and payment collection to session scheduling, staff coordination, and regulatory compliance.

Between June 2025 and January 2026, we designed and built their entire digital operations platform as a solo developer: a payment processing system, an internal operations dashboard, and a public-facing marketing website. All three applications are production-grade, fully deployed, and interconnected — forming a single coherent system that covers the full lifecycle of the business.

The platform at a glance

Checkout

Payment processing & invoicing

  • 73,000+ LOC
  • 45+ API endpoints
  • Multi-country Stripe

PrepOne

Internal operations dashboard

  • 306,000+ LOC
  • 388 API routes
  • 87 DB tables
  • 40+ sections

Website

Public marketing & enrollment

  • 46,000+ LOC
  • 47 pages
  • 6 enrollment flows

425,000+ total lines of code · 430+ API endpoints · 87 database tables

thEdiGitAI bot

|

Checkout — Payment Processing Platform

checkout.prepdoctors.com · Express.js, Node.js, Stripe, Vercel Serverless

Multi-Country Stripe Integration

Separate Stripe organizations for Canadian (CAD) and Australian (AUD) operations, automatically routing transactions based on program and region.

Payment Links & Installment Plans

Staff generate branded payment pages with program-specific pricing and payment plan options. Automated daily processing with exponential backoff on failures.

Discount & Pricing Engine

Full discount code system with validation rules, usage tracking, multiple discount types, early bird pricing, and automatic provincial tax computation.

Electronic Signatures

Built-in enrollment agreement and NDA signing with Redis-cached agreement rendering. No third-party e-signature tool required.

Circuit Breaker Pattern

External API calls wrapped in circuit breakers with configurable failure thresholds, half-open testing, and automatic recovery for graceful degradation.

PCI-Compliant Audit Logging

Every transaction generates a compliance event with automatic sensitive data redaction. Redis deduplication prevents double-charges. Feature flags enable canary deployments.

PrepOne — Operations Dashboard

dashboard.prepdoctors.com · Next.js 15, React 19, TypeScript, Drizzle ORM, Neon PostgreSQL

Financial Intelligence

Executive summary, revenue analytics, accounts receivable, cash flow projections, deposit tracking, and full transaction history — all filterable by date, program, campus, and cohort.

Payment Operations Center

Real-time unified timeline, manual charge processing, retry management, anomaly detection with severity classification, payment funnel tracking, and failure analysis.

Cohort Command Center

Master-detail layout with filterable cohort list and six-tab detail panel. URL-driven state for deep-linkable views. Real-time seat counts and bulk operations.

Calendar System (28K+ LOC)

Five view modes with drag-and-drop, 35+ components, conflict detection wizard, venue utilization, instructor load balancing, edit request workflows, and multi-campus support.

AI Email Builder & Communications

Visual email editor with AI-generated HTML, embedded chat assistant, SMS via Twilio, delivery tracking, Microsoft Teams integration, and centralized notification routing.

CRM & Student Management

Unified student profiles, deal pipeline, activity timeline, HubSpot bidirectional sync with 60+ webhooks, dedicated Sync Command Center, and data quality monitoring.

QR Attendance System

Camera-based QR scanner with USB barcode fallback, student portal with OTP auth, staff PWA with offline queue, and floating decision panel for mode mismatches.

T2202 Tax Certificates

Automated Canadian tuition tax certificate calculation, generation, and distribution — replacing manual spreadsheet work.

Advisory Booking

Five-factor advisor matching algorithm, 0-100 lead scoring, and real-time walk-in queue management across physical campuses.

Access Control

Microsoft Entra ID SSO with database-backed sessions, full RBAC with PagePermissionGate on every page, role hierarchy with user-level overrides, and Cmd+K command palette.

Website — Marketing & Enrollment

one-prep-website.vercel.app · Next.js 15 (PPR), React 19, TypeScript, Tailwind CSS 4

Six Enrollment Flows

Program-specific enrollment forms built on a shared base component with Zod validation, registration record creation, and Checkout payment redirect.

First-Party Analytics

Custom analytics tracking page views, events, and conversions with geo-IP enrichment. No Google Analytics dependency — the business owns its data.

PIPEDA Compliance

Granular cookie consent banner, preference management modal, consent audit trail, and Google Tag Manager that only loads after explicit consent.

Performance & Quality

Next.js 15 PPR for optimal TTFB, 250 tests (38 E2E + 212 unit), AVIF-first images, 62 SEO redirect rules, and full security headers.

How everything connects

The three applications form an integrated platform where a student's journey flows seamlessly across all three.

01

Student discovers a program on the Website and submits an enrollment form.

02

The Website creates a registration record and generates a Checkout payment link.

03

Checkout presents payment options, processes the charge through Stripe, and confirms.

04

Payment confirmation flows back to PrepOne — the student appears in the CRM, cohort enrollment is recorded, and a welcome email is sent.

05

Staff manage everything through PrepOne: attendance, communications, payments, tax certificates, advisory bookings.

Technical foundation

Authentication

Microsoft Entra ID SSO, database-backed sessions, domain-restricted access

Authorization

Full RBAC with permission gates on every page, role hierarchy, user-level overrides

Payment Processing

Multi-org Stripe (Canada + Australia), automated scheduling, circuit breaker, retry with backoff

Data Integrity

Redis deduplication, PCI-compliant audit logging, sensitive data redaction

Database

87 PostgreSQL tables via Drizzle ORM, shared across all applications

Communications

Centralized email (Resend) + SMS (Twilio), AI-powered content generation, delivery tracking

API Surface

430+ API endpoints across three applications

Automation

10+ cron jobs: payment processing, data quality, sync, reminders, reconciliation

Testing

30 test specs (Checkout), 38 E2E + 212 unit tests (Website)

Compliance

PIPEDA privacy controls, PCI DSS audit logging, consent management with audit trail

Performance

Next.js 15 PPR, AVIF/WebP images, server-side rendering

Monitoring

Sentry across client/server/edge, structured logging, health checks, anomaly detection

Technology stack

Next.js 15React 19TypeScriptExpress.jsNode.jsPostgreSQLDrizzle ORMStripeHubSpot APIMicrosoft Entra IDAuth.js v5Tailwind CSS 4shadcn/uiTremor ChartsResendTwilioRedisSentryVercel ServerlessPlaywrightVitestZustandZod

Built solo in six months

June 2025Checkout platform live
December 2025PrepOne dashboard finalized
January 2026Marketing website completed

Let's talk about what you need

A 30-minute conversation. No pitch, no pressure. We listen, understand, and tell you honestly what we can build.

Book a call

Pick a time that works for you. 30 minutes, no pitch, no pressure.

Book a Consultation

or email hello@thedigitai.com

We respond within 24 hours.

Send a message