Custom tools that replace your worst manual bottleneck. Built in days or weeks, not months.

I build software for small businesses. The solutions use the latest in AI and automation where it makes sense — and plain, well-built code where it doesn't. Small fix or full platform, scoped to what you actually need.

Selected Work

Equipment Image Labeler

AI vision & data extraction

AI vision analyzes inspection photos to extract equipment details — model numbers, serial numbers, capacity, manufacturer — and organizes everything into exportable inventory spreadsheets. Manual overrides stick across re-runs, so you never fight the AI twice on the same correction.

ReactTypeScriptGPT-4o VisionSupabase

Bill Mistake Checker

AI-powered error detection

AI pre-screens documents for billing errors — wrong rates, miscalculated taxes, anomalous spikes — ranked by severity and estimated dollar impact. The team audits what the AI flags as worth looking at instead of reviewing everything manually.

ReactTypeScriptGemini FlashPostgres

Findings Knowledge Base

Institutional memory

Every billing error the team finds gets logged with full context — what vendor, what region, what type, how to spot it. New team members search "have we seen this before?" and get the full history. The system learns as it grows, making tagging faster with every entry.

ReactTypeScriptSupabase

Tariff Ingest — AI Skill

AI-powered document understanding

Drop a pricing document into the chat, and a working interactive calculator appears instantly — test different scenarios against the extracted rates without leaving the conversation. Goes from "we got a new document" to "we have a working model of it" in one step.

Claude SkillsClaude ArtifactsJSON Schema

Weekly Report — AI Skill

AI-assisted workflow

An AI assistant that takes messy field data, parses it, and produces a customer-ready report. The user can edit intermediate data, hand it back, and the AI regenerates the full report from the corrected version. They stay in control — the AI handles the tedious parts.

Claude SkillsExcel Parsing

Sales Email Generator

AI-assisted communication

Takes raw performance data and turns it into a polished, paste-ready customer email showing their savings visually. The real win: the sales team actually sends these emails now because the friction is gone.

Claude SkillsHTML Generation

Secure Credential Portal

Customer onboarding

Replaced a "just email us your password" workflow with a proper secure portal. Customers enter credentials through a branded link, staff retrieves them from a dashboard. Small build, big impact on first impressions.

SupabasePostgresAuth

Phone Intake Forms

Right-sized solutions

Sometimes the right answer isn't an app — it's a well-designed spreadsheet. Staff handling phone intake needed something usable immediately while on a call. AI-generated Excel forms, no deployment needed. Right-sized to the problem.

ExcelAI-Assisted

Usage Optimizer

What-if scenario modeling

Sales tool that models what a customer would save under different usage scenarios — "what if you cut summer usage 30%?" The output becomes the proposal document itself.

ReactTypeScriptSupabase

Customer Usage Database

Data infrastructure

A hierarchical data store holding monthly consumption records linked to their source documents. Plugs directly into the rate calculator — an audit becomes "pick the customer, pick the months, run it" instead of copying numbers from PDFs into spreadsheets.

ReactTypeScriptSupabase

AI-Powered PDF Splitter

Bulk document processing

Customers send bundled PDFs — 50+ documents stapled into one file. AI reads the document, identifies where each one starts and ends, and produces individually named files. Shipped in three variants including a white-labeled deployment.

ReactTypeScriptGemini Propdf-lib

AI PDF Renamer

Document organization at scale

Files arrive as scan_001.pdf. AI reads each file, extracts the key metadata, and renames them according to a defined pattern. Saves filing time across thousands of documents per month.

ReactTypeScriptGeminiSupabase

Excel Export Engine

Living workbooks, not data dumps

Generates Excel workbooks with real formulas — not static data. Clients can change any input and watch the entire workbook recompute. The in-app preview matches the downloaded file exactly.

ExcelJSReactTypeScript

About

What I do

I build custom software for small businesses — tools that replace the manual processes eating your team's time. The solutions use AI and automation where they genuinely help, and straightforward code where they don't. I've shipped iOS apps, web platforms, document processing pipelines, AI assistants, and Python scripts that just get the job done.

What I've shipped

Over the past year, I've built over 20 custom tools — a 14-tool internal platform for one company, plus 7 standalone projects. The platform handles everything from document extraction and rate modeling to report generation and equipment inspection. The standalone projects range from a field-capture iOS app to Claude-powered AI assistants to a parallel PDF downloader.

The work spans document processing, rate and financial modeling, AI-powered extraction and triage, mobile field apps, CRM-style internal products, Excel automation, and workflow tools. If it's a bottleneck a small team hits every day, I've probably built something like it.

What I build with

Web

React, TypeScript, Node.js, Supabase, Postgres, Vercel

Mobile

React Native, Expo (cross-platform, including iOS development from Windows)

AI

Claude (API, skills, artifacts, Agent SDK), OpenAI (GPT-4o, vision, function calling), Google Gemini (Flash, Pro, structured output, Files API)

Data & Documents

PDF extraction and generation, Excel with live formulas, RAG pipelines, vector databases

Infrastructure

Postgres-native job queues (pgflow, pgmq), edge functions, role-based access control, multi-model AI routing

Automation

n8n, Python scripting, headless browser automation