← All projects

AI Agents

Digital Twin

AI persona for portfolio engagement and lead capture

A serverless AI chatbot that answers visitor questions, qualifies leads and sends real-time notifications as a digital representative.

2025 · LiveCode ↗Demo ↗

01

The problem

Static portfolios make visitors scan documents or wait for replies to specific questions. That gap between interest and contact creates friction and missed opportunities.

02

The approach

Built a serverless conversational assistant grounded in a curated biography and work history. Structured tools capture verified contact details and record unknown questions, while server-side guards, rate limiting and strict input handling reduce abuse and fabricated submissions.

03

Challenges

Early versions fabricated placeholder emails, free models failed on tool calls, and a raw forwarded-IP header could be spoofed. Deterministic email checks, a reliable model and trusted platform IP values corrected those weaknesses.

04

What I learned

For a small knowledge base, full context can be simpler and more accurate than retrieval. Deterministic server checks are stronger than prompt-only rules, and infrastructure-provided identity signals should replace client-controlled headers.

05

Outcomes

The assistant runs continuously, answers portfolio questions immediately and can notify Terry when a visitor provides verified contact details. The architecture remains inexpensive and security-conscious.

Tech stack

  • React
  • TypeScript
  • Python
  • DeepSeek
  • OpenRouter
  • Vercel Serverless
  • Pushover API