Hi, I'm Vadim Alakhverdov
Software developer writing about JavaScript, web development, and the tools that make us productive.
Recent Posts
Friday 29/05/2026
· 11 min readWhy Your AI Feature Needs a Job Queue (And How to Add One with BullMQ)
Why synchronous LLM calls in Next.js API routes break under real load — and how to refactor to a BullMQ job queue with idempotency, priority lanes, SSE progress, and graceful shutdown.
Wednesday 27/05/2026
· 14 min readAdd AI Image Generation to Your Next.js App with Replicate, Fal, and Cloudflare R2
Add AI image generation to your Next.js app end-to-end — call Replicate or Fal with Flux, store outputs in Cloudflare R2, serve via signed URLs, handle webhooks, deduplicate, and budget cost per image.
Monday 25/05/2026
· 10 min readBuild Generative UI with Vercel AI SDK: Stream React Components from an LLM
Build generative UI with the Vercel AI SDK — stream real React components from an LLM tool call, render partial state during streaming, and gracefully fall back when a tool isn't registered.
Friday 22/05/2026
· 11 min readPinecone vs Turbopuffer vs pgvector: Which Vector Database for Production RAG in 2026
A real benchmark of Pinecone, Turbopuffer, and pgvector for production RAG in TypeScript. Latency, recall, and monthly cost at 1M, 10M, and 100M chunks.
Wednesday 20/05/2026
· 13 min readBuild a Text-to-SQL Feature: Let Users Query Your Database in Plain English
Build a production-safe text to SQL TypeScript feature with Postgres. Schema context, Zod validation, sandboxed roles, EXPLAIN gating, and a self-correction loop.
Monday 18/05/2026
· 9 min readCut Your Claude API Bill by 90% Using Prompt Caching in TypeScript
How to use Anthropic prompt caching in TypeScript to cut Claude API costs by up to 90%. Where to place cache_control breakpoints, TTL tradeoffs, and real RAG cost data.
Friday 15/05/2026
· 12 min readWhen Your AI Feature Gets Gamed: Prompt Injection Defense for JavaScript Apps
Practical prompt injection defense for JavaScript web apps: input sanitization middleware, system prompt hardening, canary tokens, and output validation with a real attack test suite.
Wednesday 13/05/2026
· 11 min readHow to Write an AI Feature Spec That Engineers Won't Push Back On
An AI feature spec template with the eight sections engineers actually want: success metrics, fallback behavior, latency budgets, edge cases, and eval sets. Real before/after example.
Monday 11/05/2026
· 12 min readBuild a Voice-Enabled AI Assistant in the Browser with TypeScript
Build a voice AI assistant in the browser with TypeScript using the Web Speech API, an LLM, and speech synthesis. Handle interruption, wake words, and mobile quirks — no backend needed for speech.
Friday 08/05/2026
· 14 min readAdd AI-Powered Citations and Source Attribution to Your RAG Chatbot
Upgrade your RAG chatbot with inline citations using Claude's Citations API and a React UI that renders clickable source markers. Full TypeScript walkthrough including hallucination detection.
Stay updated
Get notified when I publish new posts. No spam, unsubscribe anytime.