EH

Eric Holt

Full-Stack & AI Engineer · Python · React · Production Systems

Available for full-stack, backend, and AI engineering roles

Featured Projects

TraceAgent — Observable Agentic Research Platform

Python · FastAPI · Groq · Tavily · React · PostgreSQL · Docker · AWS

Built around a four-stage pipeline — planner, search, reflection, and synthesis — where the reflection stage evaluates result adequacy and conditionally loops back to search (up to 3 times) with refined queries before report generation. Every internal decision is persisted to PostgreSQL and streamed to the browser in real time via WebSocket.

Deployed to Hugging Face Spaces (Docker) and AWS EC2 (t3.micro) + RDS PostgreSQL (db.t4g.micro, VPC-only) · CloudWatch Logs via watchtower · 6 custom CloudWatch Metrics per run (RunsCompleted, PipelineDurationMs, ReflectionLoops, and more) feeding a live pipeline dashboard · Public activity feed — browse all runs with full attribution · Fork any run with a modified query, lineage tracked · Side-by-side run comparison · Multi-stage build bundles React/Vite frontend with FastAPI backend

Live Demo · Code · README · AWS Demo

TraceAgent Observable Agentic Research Platform

EvalBoard — LLM Evaluation & Prompt Testing Dashboard

Python · FastAPI · React · Groq · PostgreSQL · Neon · Docker · GitHub Actions

Define test suites with inputs, expected outputs, and scoring criteria — then run them against one or more Groq models simultaneously. Results are scored by an LLM-as-judge and stream live to the UI via SSE.

LLM-as-judge scores each result 1–10 with pass/fail, strengths, weaknesses, and reasoning · Parallel model execution for side-by-side comparison · Prompt variant management with auto-versioning · Pass rate and score trend charts · CI/CD via GitHub Actions → Hugging Face Spaces · 37 pytest tests

Live Demo · Code · README

EvalBoard LLM Evaluation and Prompt Testing Dashboard

DailySignal — Automated AI News Briefing Service

Python · GitHub Actions · Groq · PostgreSQL · Neon · Resend · React · Recharts · Docker · Hugging Face Spaces

Twice-daily AI news briefing service — fully automated from fetch to inbox with zero manual steps. GitHub Actions cron pulls from HackerNews, Product Hunt, and five RSS feeds, deduplicates via SHA-256 hashing, synthesizes a structured briefing via Groq, and delivers it to subscribers via Resend.

GitHub Actions cron scheduling — no always-on server required · Cross-source deduplication using SHA-256 content hashes · Per-subscriber unsubscribe tokens with automatic deactivation after 3 failed deliveries · PostgreSQL audit log per subscriber per run · 55 unit tests, 98% coverage · Deployed to Hugging Face Spaces with Neon serverless PostgreSQL

Live Demo · Code · README

DailySignal Automated AI News Briefing Service

SupportDesk — AI-Powered Customer Support Automation

Python · FastAPI · Groq · pgvector · React · Vite · Tailwind CSS · PostgreSQL · Docker · GitHub Actions

A webhook fires when a customer submits a ticket. The backend classifies it, searches a vector knowledge base for relevant documentation, and drafts a grounded reply — all before a human agent opens the ticket. The agent reviews the draft and cited sources inline, edits if needed, and approves. The reply goes out via Resend. Every pipeline stage is logged and broadcast to the live event dashboard in real time.

HMAC-SHA256 webhook verification with timestamp replay protection · Groq LLM classification (type, urgency, confidence) · fastembed + pgvector cosine similarity RAG retrieval · SSE streaming for draft tokens · WebSocket live event log · Resend email delivery · 71 pytest tests · Deployed to Hugging Face Spaces (Docker)

Live Demo · Code · README

SupportDesk AI-Powered Customer Support Automation

RepoSignal — GitHub Issues Analytics Dashboard

Python · FastAPI · Groq · PostgreSQL · React · Vite · Tailwind CSS · Recharts · Docker

Enter any public GitHub repo and RepoSignal fetches up to 50 issues via the GitHub REST API, classifies each one by type, priority, and sentiment using an LLM (parallelized with a concurrency cap to stay within Groq rate limits), persists results to PostgreSQL, and renders a live analytics dashboard. Select any open issue to stream an AI-drafted triage response word-by-word in real time.

SQL-powered dashboard: COUNT + GROUP BY, time-series grouping by week, JOIN across issues and classifications · Filterable issue table by type and priority · SSE-streamed AI triage drafts · Repo history — previously analyzed repos saved to DB and re-loadable from the landing page · 9 API routes with full unit + integration test coverage · Multi-stage Docker build · Deployed to Hugging Face Spaces

Live Demo · Code · README

RepoSignal GitHub Issues Analytics Dashboard

CommDesk — Multi-User Real-Time Operations Dashboard

TypeScript · Node.js · Express · React · PostgreSQL · Docker · GitHub Actions

Each incoming event follows a defined lifecycle — fired by any connected client, persisted to PostgreSQL, broadcast to every open WebSocket simultaneously, then resolved from processing to success or error after a 4-second window. New clients receive the last 50 events on connect so no one starts with a blank screen.

Health panel tracks all-time total (seeded from DB on startup) and per-session counters alongside active connection count and a real error rate driven only by genuine DB failures · Presence tracking assigns initials and avatar color to each connection, updating all clients on join and disconnect · Multi-stage Dockerfile builds React/Vite frontend and compiles TypeScript server into a single production image · Jest unit tests with mocked dependencies + integration tests against a live Neon database · GitHub Actions CI/CD — passing builds deploy automatically to Hugging Face Spaces

Live Demo · Code · README

CommDesk Multi-User Real-Time Operations Dashboard

AgentMesh — Multi-Agent Code Review & Repair System

Python · LangGraph · FastAPI · Groq · React · Tailwind CSS · Docker

Three specialized agents collaborate via a LangGraph StateGraph — Reviewer identifies issues, Fixer produces corrected code with a changelog, and Evaluator scores the fix across three dimensions and can reject the output and route back to Fixer with specific feedback for a second pass. Every agent decision and handoff streams to the browser in real time via SSE.

Evaluator scoring: Correctness (40%) · Completeness (40%) · Code Quality (20%) — score 50–69 triggers Fixer retry with evaluator feedback, capped at 2 passes · Structured Pydantic schemas for all inter-agent state · File upload or JSON input, language auto-detection · Stateless backend · Multi-stage Docker build deployed to Hugging Face Spaces

Live Demo · Code · README

AgentMesh Multi-Agent Code Review and Repair System

TriageAgent — AI-Powered Email Triage & Draft System

Python · FastAPI · Groq · Gmail OAuth2 · React · Docker · GitHub Actions

Three-stage pipeline — Classify, Extract, Draft — processes pasted emails end-to-end: classifying type and urgency, extracting sender intent and action items, then generating a professional reply. Every stage streams structured output to the browser in real time, and results with confidence below 0.75 are flagged for careful human review before sending.

Urgency scoring (low / medium / high) with confidence threshold safety gate · Gmail OAuth2 for direct send from the UI · Groq llama-3.3-70b-versatile inference · Dockerized single-service deploy to Hugging Face Spaces · Automated CI/CD via GitHub Actions on push to main

Live Demo · Code · README

TriageAgent AI-Powered Email Triage and Draft System

AgentFlow – AI-Powered Document Intelligence

Python · LangGraph · FastAPI · Groq · React · Docker

Built on a LangGraph multi-step agent pipeline that classifies uploaded HR documents (resumes, cover letters, interview notes, scorecards, job descriptions) and routes each to a specialized LLM analysis node returning structured JSON with skills, risk flags, and hiring recommendations.

Groq LLM inference (llama-3.3-70b) + tenacity retry · Vision model support for image/handwritten docs (llama-4-scout) · Deterministic classification pre-check · Single Dockerized service on Hugging Face Spaces · SQLite session persistence · n8n webhook integration

Live Demo · Code · README

AgentFlow AI-Powered Document Intelligence

Get Set Wedding — Production SaaS Planning Platform

React · TypeScript · Supabase · Stripe · Node

Built end-to-end as contract full-stack developer — database schema, PostgreSQL RLS for structural multi-tenant isolation, Stripe billing with webhook-driven server-side enforcement, and a context-aware AI assistant integrated with live user planning data.

PostgreSQL-layer RLS (structural isolation, not application-level) · Webhook-driven Stripe pipeline — server-side enforcement on every API request prevents client-side bypass · Refresh-safe JWT session rehydration · Demo-to-account conversion with isolated storage scopes · RBAC admin routing · AI assistant with live access to user planning data (budget, guest list, vendors)

Live App · README

Get Set Wedding

DocSignal — AI-Powered Documentation Intelligence

Python · FastAPI · React · Groq · pgvector · PostgreSQL · Docker

Ask natural language questions against any documentation set — DocSignal retrieves semantically relevant answers with cited source passages, not just keyword matches. Ships with preset doc sets (FastAPI, SQLite, Requests) and supports ingesting any PDF or URL (up to 25 pages) into a custom set.

fastembed BAAI/bge-small-en-v1.5 local embeddings (no API key) · pgvector cosine similarity search · Groq LLM answer synthesis with citations and similarity scores · Analytics dashboard: query frequency, top sources, volume over time · Multi-stage Docker build · Deployed to Hugging Face Spaces

Live Demo · Code · README

DocSignal AI-Powered Documentation Intelligence

GitHub Activity

About

I design and build full-stack AI systems with a focus on real-world deployment, observability, and production reliability. My work spans multi-step agentic pipelines with conditional looping and self-evaluation, RAG systems with pgvector and cited retrieval, React/Vite frontends with live SSE and WebSocket streaming, and automated scheduled pipelines with multi-source aggregation and email delivery. On the infrastructure side I instrument systems with custom CloudWatch metrics and live dashboards, ship with CI/CD, and have deployed to AWS and Azure. I also have production SaaS experience through Get Set Wedding, where I built Stripe billing enforcement, PostgreSQL RLS architecture, and a context-aware AI assistant against live user data. Everything in my portfolio is production-grade with monitoring, lineage, tested codebases, and real users - not just demos.

Contact

Email · GitHub · LinkedIn