Selected work
AI answer-engine visibility platform — measures whether AI assistants cite you.
A full Laravel application that probes answer engines on a schedule and records whether a client is cited, mentioned, or absent for a given prompt. Built the provider layer, the matcher, and the scheduled runner, plus a Filament admin for reviewing verdicts. The reporting deliberately keeps three states rather than blending them into one score, because a brand being named without a citation is a different problem from not appearing at all. Exposed over MCP so an assistant can query citation data directly as a tool rather than through a dashboard.
Interactive visualization of how AI citation actually propagates.
Cyan waves are an index crawling the open web; gold streams are a source being cited through that index and growing as a result. Sources begin as faint sparks and crystallize into faceted gems as citations accumulate. Hand-written particle system, wave propagation, and crystallization animation on a raw 2D canvas — no Three.js, no D3.
Crypto paper-trading and market education — live prices, practice portfolios, sentiment.
A Next.js client on Vercel against a Python API on Render, with Supabase for auth and Postgres behind row-level security. Prices come from CoinGecko; sentiment is scored by a FinBERT model running in the API. The trading surface is paper-only by design, and the education layer, The Read, is a factual status card about a token rather than a call. Ships as a paid product on Stripe.
A WordPress plugin that spins up a live, AEO-ready demo site in the browser.
A WordPress Playground blueprint: click the link and a full WordPress install boots in the browser with the plugin active, so the AEO setup can be seen working rather than described. Removes the "install it and see" step from the sales conversation entirely.
Python finance tracker — the math layer Aureus was built on.
A Streamlit application for tracking portfolio performance and sentiment. Its finance-metrics and sentiment modules became the computational core that Aureus reuses, which is why the two share behaviour despite being different stacks.
Measures whether AI assistants cite a brand across a prompt matrix — cited, named-but-not-cited, or absent — with every figure drillable to the cell.
A capture tool and report generator that scores whether AI assistants cite a brand across a prompt matrix, holding three distinct verdicts instead of collapsing them into a single number: cited, named-but-not-cited, and absent — because being named without a citation is a different problem from never surfacing at all. Every headline figure drills through to the underlying cells, including in the printed PDF, so the arithmetic is part of the deliverable rather than a footnote to it. Runs a matrix of 7 prompts across 4 assistants with every answer logged.