Mike Vidal
AI Engineer · Miami · open to remote
Applied-AI engineer. Ship LLM-powered systems to production end-to-end — multi-stage pipelines, tool-use, structured output, and human-in-the-loop workflows. Solo, production-grade. Open to AI Engineer / FDE roles.
Selected work
Open source · v1.7.6 · Open source
Hybrid retrieval entirely on-device — BM25 + semantic vectors via sqlite-vec and Transformers.js, zero cloud dependencies.
Persistent, file-based memory for Claude Code — context that survives across sessions.
- File-based long-term memory — survives across sessions and machines
- Hybrid retrieval: BM25 keyword + semantic vector via sqlite-vec + Transformers.js
- Capture & recall: insights, corrections, project facts, references, rules
- MCP server with save / search / session / rules tools
Stack: TypeScript · @modelcontextprotocol/sdk · sqlite-vec · Transformers.js (embeddings) · Zod · Vitest · Node 22+
Live · Shopify App Store · Private · closed-source
Shopify Functions enforce purchase restrictions server-side, so unapproved customers can't reach checkout — platform-level, not client-side.
Multi-tenant B2B customer-approval + wholesale-pricing SaaS for Shopify. Live in the App Store.
- Live in the Shopify App Store — multi-tenant, paying merchants
- Custom B2B registration forms with field validation (license #, tax ID, etc.)
- Automated approval workflow with merchant-side review queue
- Shopify Functions (purchase-restriction + wholesale-discount) for platform-level enforcement
Stack: TypeScript · React 18 + React Router 7 · Shopify App Bridge + Polaris · Shopify App React Router framework · Shopify Functions (extensions) · Prisma 6 + session storage · Vite 6
In active build · Private · closed-source
One Sonnet-4.6 classifier with tool-use, structured output, and prompt caching — not a multi-agent system. Human approval via Telegram before any email ships.
Autonomous B2B intent monitoring + outreach — a multi-stage LLM pipeline with human-in-the-loop approval.
- Multi-stage pipeline: scrape → classify → email-find → draft → approve → send
- Single Sonnet-4.6 classifier with tool-use, structured output, and prompt caching — not a multi-agent system
- Human-in-the-loop approval via Telegram before any email ships
- Five source scrapers feeding a normalised lead model in SQLite
Stack: Node.js · Next.js 16 · Sonnet 4.6 (tool-use, structured output, prompt caching) · multi-source ingestion · HITL approval (Telegram) · Smartlead · SQLite
In active build · Private · closed-source
Claude-API virality scoring against algorithm-gate heuristics (hook, payoff, retention shape) — content scored for break-out before it pops, not after.
AI content-viralization SaaS — score videos for break-out potential before they pop.
- Claude-API virality scoring against algorithm-gate heuristics (hook, payoff, retention)
- Multi-platform: YouTube (live googleapis pull), Instagram, TikTok
- Workspace + multi-channel portfolio model on Prisma 7 + Postgres
- Trend-snapshot pipeline tracking emerging signals over time
Stack: TypeScript · Next.js 16 · Prisma 7 + PostgreSQL · Claude API (@anthropic-ai/sdk) · NextAuth + Prisma adapter · googleapis (YouTube) · Recharts · Tailwind v4
Pre-release · v0.1.5 · Private · closed-source
Tauri 2 + Rust instead of Electron — ~10× smaller binary, native silent print to the thermal printer, OS-keychain credentials. Every label purchase gated behind explicit user confirmation.
Desktop shipping app for high-volume solo shippers — purpose-built UI over the Shippo API.
- Tauri 2 + Rust client — fast, lean, offline-capable, ~10× smaller than Electron
- End-to-end flow: paste address → verify → rate-shop → buy → silent thermal print
- Searchable contacts + shipment history with 15-min tracking polling, void, and CSV export
- Auto-customs forms for non-US destinations
Stack: Tauri 2 · Rust · React 19 + TypeScript · Vite · TanStack Query · Radix UI + Tailwind v4 · Zustand · Shippo API · OS keychain (keyring)
In active build · Private · closed-source
XGBoost + LightGBM + scikit-learn retrained on schedule via Celery + Redis. Multi-sportsbook odds aggregation for line shopping; bankroll tracking tied to live game state.
NBA betting-intelligence SaaS — ML predictions, line shopping, bankroll tracking.
- ML prediction stack — XGBoost + LightGBM + scikit-learn — retrained on schedule
- Async FastAPI + SQLAlchemy + Postgres backend; Celery + Redis for background workers
- Live NBA data via nba_api; multi-sportsbook odds aggregation for line shopping
- Bankroll + bet-history tracking with live scores tied to open positions
Stack: Python 3.12 · FastAPI · SQLAlchemy (async) + PostgreSQL · Redis + Celery · XGBoost + LightGBM + scikit-learn · nba_api · Stripe · React 19 + Vite + TypeScript
Stack & tooling
TypeScript · Python · Rust · Node 22+ · React 19 · Next.js 16 · Tauri 2 · Three.js · Tailwind v4 · Claude API (tool-use, structured output, prompt caching) · MCP · sqlite-vec · Transformers.js (local embeddings) · XGBoost · LightGBM · scikit-learn · Prisma 7 · PostgreSQL · SQLite · Redis · Celery · Shopify App Bridge · Shopify Functions · Smartlead · Stripe
Education
BrainStation Diploma, Software Engineering
University of Miami Bachelor of Science, Entrepreneurship
Shanghai Jiao Tong University Language Studies
Writing
mikevidal.dev/blog — notes on applied AI, LLM pipelines, and shipping real systems.