Projects
Three AI systems, shipped solo.
Each one trained, built and deployed end to end. Every card says what the system can't do, too — open one for the full engineering detail.
SignBridge AI
Sign into any video call, read every word said back. All on-device.
A desktop app that sits beside a video call and bridges both directions. A webcam watches the signer, MediaPipe extracts hand and body landmarks, and a Transformer I trained classifies the sign — which is spoken into the call through a neural voice routed as a virtual microphone. Going the other way, the call's audio is captured, transcribed with streaming speech recognition, and painted as live captions over the call window. No audio or video leaves the machine.
- Electron
- React 19
- TypeScript
- PyTorch
- ONNX Runtime Web (WebGPU)
- MediaPipe
- 250
- signs
- 74%
- top-1
- 98%
- fingerspelling
- <1.5s
- captions
What it doesn't do: Recognizes isolated signs and joins glosses; it does not translate ASL grammar into English, which is an open research problem.
Engineering detailTora AI
An AI that operates your computer from your phone — and asks before it does anything you can't undo.
A local-first AI agent you text like a person through Telegram. From your phone it searches the web with sourced answers, reads feeds with proof screenshots, manages files, and fills out multi-step job applications from a saved profile and resume — with the reasoning running on a local model, no cloud API anywhere in the loop. Anything irreversible triggers an Approve/Deny card on your phone showing exactly what's about to happen.
- Python
- Ollama (Qwen2.5)
- Playwright
- browser-use
- python-telegram-bot
- asyncio
- 0
- cloud calls
- 100%
- irreversible actions gated
- 0
- secrets exposed to model
- append-only
- audit log
TripWise
Plan a trip your budget can actually afford.
A full-stack travel platform: pick your dates, interests and budget, and it builds a day-by-day plan — where to go, what to do, where to stay — with the itinerary generated by Claude and streamed back live. A live weather forecast is injected into the prompt so outdoor activities land on the best days, and a two-stage recommendation engine ranks destinations and stays against your budget and taste.
- Python
- FastAPI
- React 19
- TypeScript
- PostgreSQL 16 + pgvector
- Redis 7
- 28
- endpoints
- 555
- vector embeddings
- 23
- tests
- −27%
- bundle