Cv Santiago
Interactive CV with AI chat integration. Built with React 19, TypeScript, Claude API. Chat with my AI avatar about my experience.
Last verified:
What is Cv Santiago?
Cv Santiago is Santiago Fernández de Valderrama's interactive portfolio website and CV, built as a production-grade demonstration of his AI engineering capabilities. The site features an AI chatbot named
Cv Santiago pricing
Pricing model: Freemium
The portfolio runs on free tiers for infrastructure (Vercel, Supabase, Langfuse = $0). Text conversations cost under $0.005 each (using 5 models in the pipeline). Voice sessions cost approximately $0.25 each using OpenAI Realtime API. Estimated cost at 200 conversations/day is around $30/month. Requires Claude Code subscription: Claude Max plan at $200/month or Claude Pro at $20/month for lower volume. The GitHub repository is open source under MIT license with no feature gating.
Cv Santiago pros
- Interactive AI chatbot that responds as Santiago in first person
- Dual-mode support: text (Claude Sonnet) and voice (OpenAI Realtime API)
- Agentic RAG with hybrid search combining pgvector and BM25
- 71 automated evals across 10 categories as CI gate
- 6-layer prompt injection defense with real-time jailbreak alerts
- Private LLMOps dashboard with 8 tabs showing real production metrics
- Closed-loop system that auto-generates tests from production failures
- Bilingual support in Spanish and English
- Cost-efficient at under $0.005 per text conversation
- Voice sessions at approximately $0.25 per session
- Zero infrastructure cost using free tiers (Vercel, Supabase, Langfuse)
- 6 published case studies with interactive architecture diagrams
- MIT license with no feature gating or dark patterns
- GEO-ready with llms.txt and JSON-LD structured data
- Real-time observability with Langfuse tracing and cost tracking
- SSR prerender for fast loading and SEO optimization
- Interactive GSAP-animated SVG architecture diagram with pan/zoom
Cv Santiago cons
- Requires Claude Code subscription (Claude Max or Claude Pro plan)
- Needs multiple API keys (Anthropic, OpenAI, Supabase, Langfuse, Resend)
- Complex setup with numerous environment variables and dependencies
- LLMOps dashboard is private and password-protected, not publicly accessible
- Voice mode requires OpenAI Realtime API which has separate costs
- Heavily dependent on Claude Code ecosystem and Anthropic tools
- No mobile app, web-only interface
- Self-hosted solution requires technical knowledge to deploy
- 71 evals can slow down the build pipeline
- Some advanced features require Supabase service role key access
- Limited to showcasing Santiago's specific projects and experience
- Not a general-purpose CV template for other users
Frequently asked questions about Cv Santiago
What is santifer.io?
santifer.io is Santiago Fernández de Valderrama's interactive portfolio website and CV. It is a production-grade interactive portfolio that demonstrates his AI engineering skills through an AI chatbot named Santi, agentic RAG, 71 automated evals, LLMOps observability, and 6-layer prompt injection defense. The site showcases his 16 years of experience, including Career-Ops (47.4K+ GitHub stars), Jacobo AI agent, Self-Healing Chatbot, and Business OS with Airtable.
How does the AI chatbot work?
The chatbot uses Claude Sonnet as the main LLM with agentic RAG for retrieving information. When a user sends a message, it goes through FloatingChat.tsx to the api/chat.js edge function on Vercel Edge. The system uses hybrid search combining Supabase pgvector (semantic search) and BM25 (full-text search), with Claude Haiku for reranking and diversification. The chatbot responds in first person as Santiago and can handle both text and voice modes.
What is the 6-layer defense system?
The 6-layer prompt injection defense includes: keyword detection, canary tokens, fingerprinting, anti-extraction, online safety scoring, and adversarial red team testing. The system provides real-time jailbreak email alerts using Resend API when it detects attack attempts. This protects the chatbot from prompt injection attacks and ensures safe operation.
What are the 71 automated evals?
The 71 automated evals span 10 categories: factual accuracy (9 tests), persona adherence (4 tests), boundary testing (7 tests), response quality (7 tests), safety/jailbreak (7 tests), language handling (5 tests), RAG quality (16 tests), multi-turn conversations (5 tests), source badges (5 tests), and voice quality (6 tests). About 70% are deterministic tests and 30% use LLM-as-Judge with Claude Haiku. These evals serve as a CI gate on every push.
What is the LLMOps dashboard?
The LLMOps dashboard is a private, password-protected page at /ops with 8 tabs: Overview (KPIs, timelines, intent distribution), Conversations (filter/list/detail with spans, cost, latency), Costs (breakdown per component), RAG (activation rate, chunks per article), Security (defense funnel, jailbreak list), Evals (pass rates by category), Voice (sessions, latency P50/P95), and System (prompt versions, RAG stats). It displays real production data from Langfuse traces and Supabase.
How much does it cost to run?
Infrastructure costs $0 using free tiers (Vercel, Supabase, Langfuse). Text conversations cost under $0.005 each using 5 models in the pipeline. Voice sessions cost approximately $0.25 each using OpenAI Realtime API. At 200 conversations per day, estimated monthly cost is around $30. You also need a Claude Code subscription: Claude Max plan ($200/month) or Claude Pro ($20/month for lower volume).
How do I deploy this portfolio?
Clone the repository from github.com/santifer/cv-santiago, run npm install, then npm run dev to start locally. You need to set environment variables for ANTHROPIC_API_KEY, OPENAI_API_KEY, SUPABASE_URL, SUPABASE_SERVICE_ROLE_KEY, LANGFUSE_PUBLIC_KEY, LANGFUSE_SECRET_KEY, RESEND_API_KEY, and OPS_DASHBOARD_SECRET. The build pipeline includes rag:sync, prompt:sync, embed-evals, TypeScript compilation, Vite build, sitemap generation, and SSR prerendering.
What tech stack does it use?
The portfolio uses React 19, TypeScript, Tailwind CSS, Vite, and Vercel for deployment. The chatbot uses Claude Sonnet for text generation and OpenAI Realtime API for voice. RAG uses OpenAI embeddings (text-embedding-3-small), Supabase pgvector for vector storage, and BM25 for full-text search. Observability uses Langfuse for tracing and Supabase for data storage. Animations use GSAP and Motion.
What case studies are included?
The portfolio includes 6 published case studies: Self-Healing Chatbot (production LLMOps with 71 evals and 6-layer defense), Career-Ops (multi-agent job search system with 47.4K+ GitHub stars), Jacobo AI Agent (omnichannel agent with WhatsApp and voice), Business OS (custom ERP with 12 Airtable bases and 2,100 fields), Programmatic SEO (4,730 pages generating 2M+ impressions), and n8n for PMs (collaboration guide). All case studies are bilingual with JSON-LD structured data.
Is the code open source?
Yes, the portfolio code is open source under MIT license on GitHub at github.com/santifer/cv-santiago. It has 610 stars and 233 forks. The MIT license means no dark patterns, no upsell inside the CLI, and no feature gating. The Career-Ops system it showcases is also open source at career-ops.org with 47.4K+ GitHub stars and a Discord community of 3,300+ members.