02Projects

What I've built

Distributed workflow recovery, voice screening and evidence-graded health data. Each project links to the code and the reasoning behind it.

Featured

ReLab

Distributed Workflow Reliability & Replay

Sep 2026 – Present

Kill a worker after it charges a customer, then check whether the workflow recovers without charging twice. ReLab makes that failure observable and testable across real processes.

Real worker crashes · Deterministic replay · 160+ tests

  • Go workers coordinate through PostgreSQL, with each state change and its append-only event written in one transaction. A pure reducer reconstructs run state from the journal alone.
  • Lease-based recovery requeues abandoned tasks. An idempotency ledger suppresses effects already recorded; delivery is at least once, and a crash between an external effect and its ledger write can still duplicate it.
  • 160+ unit and integration tests cover simulated failures, alongside process-level SIGKILL tests. Five fault types exercise worker crashes, duplicate delivery, latency, HTTP errors and database disconnects.

Distributed systemsBackend & APIs

GoPostgreSQLNext.jsReactTypeScriptDockerOpenTelemetry

Voxidria

Voice-Based Parkinson's Risk Screening

Jan 2026 – Present

A browser-based voice screening flow that connects recordings, audio features and model inference to a risk score and session-history dashboard. A research prototype, not a clinical diagnosis.

7 API endpoints · 0–100 screening score · Research prototype

  • React/Vite captures voice tasks; seven Supabase Edge Functions handle sessions, signed uploads, analysis, history, deletion and accessibility text-to-speech.
  • A modular Python pipeline extracts features with Librosa and Praat-Parselmouth, then runs a TensorFlow classifier trained on the 196-sample UCI Parkinson's dataset.
  • Auth0 JWTs are verified server-side on every request. PostgreSQL and a private audio bucket use row-level security; Gemini explains reading-task results and ElevenLabs provides speech playback.

Applied MLFull-stack

ReactViteTypeScriptSupabasePostgreSQLPythonTensorFlowAuth0Gemini APIElevenLabs

DiaLog

Personal Glucose Record & Evidence-Graded Insights

Dec 2025 – Present

Log or import glucose, meals, activity and sleep, then see patterns graded by how much of your own history supports them. Thin data stays labelled as thin; DiaLog is not a medical device.

9 import connectors · 12 accessibility-tested routes

  • Next.js, Prisma and PostgreSQL support ten health-event types, unit-aware validation and nine import connectors. Preview-then-commit imports report malformed rows and make repeat uploads a no-op.
  • The TypeScript analytics engine serves evidence-graded findings. A separate offline Python research pipeline uses chronological splits, baseline comparisons and uncertainty reporting; its models are not deployed to users.
  • An installable PWA provides offline fallback while excluding authenticated health data from caching. The AI layer receives aggregate evidence bundles, never raw health records.
  • Vitest and Playwright cover the application; axe accessibility checks run across twelve public and authenticated routes, with table alternatives for charts.

Full-stackData pipelines

Next.jsReactTypeScriptPostgreSQLPrismaPythonPWAVitestPlaywright

Also on GitHub

  • Motion

    Resumable Coursework Workspace · Chrome Extension

    Source-linked requirements · Resumable jobs · Early MVP

    Full-stackSystems

    ReactTypeScriptViteChrome Manifest V3

    Project details: Motion

    A Chrome side panel that brings LMS deadlines, assignment requirements, notes and longer-running jobs into a student-controlled workspace. Currently an early MVP.

    • Reads authorized D2L Brightspace pages and links extracted deadlines, requirements and notes back to their sources, flagging ambiguous information for review.
    • Resumable background jobs expose completed, active and blocked steps. Coursework stays in IndexedDB; AI can run locally or through an explicitly configured provider.
    • Built with React, TypeScript and Vite for Manifest V3, with tested, target-specific confirmation gates for consequential actions.

    ReactTypeScriptViteChrome Manifest V3IndexedDBVitestPlaywright

  • FinCopilot

    Conversational Finance Copilot for Students

    My focus: browser-agent research, auth and dashboard

    Full-stackBackend & APIs

    Next.jsReactTypeScriptFastAPI

    Project details: FinCopilot

    A team-built finance copilot that assembles a student's profile through chat, flags money issues and compares what-if scenarios.

    • I built the browser-agent research workspace, auth and dashboard updates, and local testing documentation on a Next.js frontend and FastAPI backend.
    • The team combined Supabase profile persistence, rule-based issue detection and before/after net-worth simulations with OpenAI and Playwright research workflows.

    Next.jsReactTypeScriptFastAPISupabaseOpenAI APIPlaywright

  • Farmesh

    AI Coordination for Canadian Food Networks

    5-agent pipeline · Exact and split fulfillment

    Full-stackBackend & APIs

    Next.jsTypeScriptSupabasePostgreSQL

    Project details: Farmesh

    Connects local produce supply with business demand through explainable AI matching, including substitutions and two-vendor split orders.

    • Five agents handle intake, normalization, demand interpretation, matching and coordination, with buyer preferences and locality included in the match reasoning.
    • Next.js and TypeScript power farmer, buyer and admin dashboards; Supabase provides PostgreSQL and role-based auth, and Backboard.io orchestrates the agents.

    Next.jsTypeScriptSupabasePostgreSQLBackboard.ioTailwind CSS

  • RouteSense

    Traffic-Aware Delivery Route Optimization

    6 routing algorithms · 123+ unit tests · Live demo

    Applied MLSystems

    PythonJavaScriptQ-LearningSimulated Annealing

    Project details: RouteSense

    A last-mile router that replans after each delivery as simulated traffic changes, balancing travel time, fuel and late-arrival penalties.

    • Compares nearest-stop and static baselines with hill climbing, simulated annealing, adaptive annealing and tabular Q-learning under delivery time windows.
    • A client-side GitHub Pages demo lets visitors build networks, change traffic and compare algorithms; the Python implementation has 123+ unit tests.

    PythonJavaScriptQ-LearningSimulated AnnealingGitHub Pages

  • FareShare

    Full-Stack Ride-Sharing Platform

    Ride listings · Booking flows · Reviews

    Full-stackBackend & APIs

    FastAPIPythonPostgreSQLSQLAlchemy

    Project details: FareShare

    A ride-sharing app connecting drivers and riders through listings, search, bookings and profiles.

    • A FastAPI REST backend uses PostgreSQL, SQLAlchemy and Pydantic for authentication, ride listings, bookings and reviews.
    • A separate React/Vite client supports driver and rider workflows.

    FastAPIPythonPostgreSQLSQLAlchemyPydanticReactVite

  • Python TCP File Server

    Multithreaded Client–Server System

    Concurrent clients · Chunked file transfer · Standard library

    Systems

    PythonTCP SocketsMultithreadingCLI Applications

    Project details: Python TCP File Server

    An educational networking project implementing a text command protocol and concurrent file downloads over raw TCP sockets.

    • A thread-per-client server enforces connection capacity, streams text and PDF files in chunks, and records client connection history.
    • Separate Python client and server use only the standard library. The simplified protocol is a learning project, not a production file service.

    PythonTCP SocketsMultithreadingCLI Applications