Work

In build toward production

Brand-content agent system

In build

Problem: Pharma marketing creative must stay on-brand and compliance-safe across websites, email, and banners.

Approach: Agentic system on Mastra + Claude Agent SDK with MCP connectors; local QA + evals before merge, separate Cloud GO before deploy.

Outcome: In build toward production under brand + compliance rules — no fake ship claim.

Press-release pipeline

In build

Problem: Press releases must be fact-grounded, not free-form generation.

Approach: Fact-grounded press-release production pipeline.

Outcome: In build toward production.

Production

Dera Intelligence

Production

Problem: Agency social listening depended on an expensive third-party license.

Approach: Co-built with a PhD scientist — RAG + LightRAG on the agency taxonomy.

Outcome: Replaced a five-figure annual third-party listening license; now produces client social listening reports.

SKYbuddy

Production

Problem: Sensitive life-sciences work cannot live in public chat tools.

Approach: Built with the CTO — self-hosted Open WebUI fork behind ZDR constraints.

Outcome: Deployed to all 250 employees.

AI Studio

Production

Problem: Internal/client generative image and video needed a model-agnostic canvas.

Approach: Co-built with the CTO — ReactFlow canvas via fal.ai.

Outcome: In production for internal and client work.

Side projects

Apps I build on my own time, mostly with AI coding agents.

InteliBets

Open beta · free research

A research app for NFL player props that only surfaces bets where the numbers show positive expected value.

What it does: A Python math engine finds props with positive expected value. Agents add matchup context and risks, but they can't change the numbers. A synthesizer writes a weekly Top 10, an eval loop checks it, and nothing gets published until I approve it. After the games, every pick is graded on hit or miss and closing-line value, and those grades feed a learning loop.

How it's built: The math lives in Python, and agents only do the writing and checking around it. The interface I'm designing is a personal research agent: one chat, with a Props Explorer that opens as an artifact next to it.

Next: It stays framed as free research until closing-line value holds up over several weeks.

For entertainment and research only. Not financial advice. 21+.

SpEdStream

Prototype · private beta

A voice-first, privacy-first notebook for special education teachers. Notes stay on the phone.

For: K–12 special ed, resource and inclusion teachers, and behavior specialists. They notice something about a student mid-class and lose it before they can write it down. Paper is private but hard to search before an IEP meeting, and district systems are too slow to use mid-class.

What it does: A few seconds of talking becomes a tagged note on that student's timeline. Logging a behavior takes about three taps, and photo import reads old paper notes into text on the phone. An optional on-device assistant answers questions about your own notes without going online.

How it's built: Flutter (iOS first), Riverpod, and Hive with on-device encryption. Speech-to-text runs on the phone (Whisper is optional), Google ML Kit reads photos, and an optional small Gemma model runs on the device through flutter_gemma. PIN or biometric lock, and a confirm step before anything is exported. Built with AI coding agents.

Next: Getting ready for a small TestFlight test. It isn't live or on the App Store yet.

BounMe

Working prototype

An iPhone app that listens to Pali chanting at a Theravada Buddhist temple and shows the English meaning line by line, live, like lyrics.

For: Buddhist temple-goers of any age who chant regularly and want to understand the words, and the merit behind them. Accuracy is treated as sacred: it only uses trusted, published translations and never makes one up.

What it does: Live chant-follow highlights where the monks are, shows how confident it is, and has a one-tap “wrong” flag. A morning quote and mood check-in offer a real Dhammapada verse or protective chant. Monastery recordings come with synced lyrics, and you can practice by heart, ask a grounded “what does this chant mean?” chat that cites its sources, and share quote cards.

How it's built: Native SwiftUI (Swift 6, iOS 17, SwiftData). Whisper handles speech recognition, with Groq Whisper large-v3 as a backup, and a fuzzy Pali sound-alike matcher runs over a curated 43-chant pack from Thanissaro Bhikkhu's free Chanting Guide. The chat answers only from that pack and the Dhammapada, and a quote checker verifies it. I built it with AI agents for build, evals and design: 197 automated tests plus held-out audio evals, with 0 wrong lines on in-pack chants.

Next: Testing in a real temple and review by monastics. Not on the App Store.

BounMe chant-follow screen: the Pali line in italics above its English meaning, with the current line highlighted and a play bar below
Chant-follow
BounMe morning screen: a Dhammapada 223 verse, a short reflection, and a row of mood check-in buttons
Daily calm