Hi, I'm Vadim Alakhverdov
Software developer writing about JavaScript, web development, and the tools that make us productive.
Recent Posts
Wednesday 17/06/2026
· 11 min readAnthropic Agent Skills in TypeScript: Package Reusable Instructions and Code as Tools
Stop copy-pasting the same 2,000-token system prompt into every feature. This Anthropic Agent Skills TypeScript SDK tutorial shows how to package instructions and scripts as a loadable skill Claude pulls in on demand.
Monday 15/06/2026
· 11 min readBuild a ChatGPT App with the OpenAI Apps SDK and MCP in TypeScript
Ship an interactive app inside ChatGPT with the OpenAI Apps SDK and MCP in TypeScript. Build an MCP server, an iframe widget, and the postMessage bridge that syncs state between ChatGPT and your UI.
Friday 12/06/2026
· 9 min readWhy Your "Working" AI Demo Will Break in Production: A Reality Check for PMs and Founders
The AI demo vs production gap, explained for PMs and founders: eight specific ways a working prototype breaks at scale, plus a pre-roadmap checklist.
Wednesday 10/06/2026
· 11 min readPricing AI Features: A Founder's Guide to Per-Seat vs Usage-Based Models
Per-seat vs usage-based pricing for AI features, with real gross-margin math for three products and a TypeScript calculator you can adapt to your own numbers.
Monday 08/06/2026
· 13 min readOpenAI Realtime API vs Gemini Live vs Pipecat: Which for Voice AI in TypeScript
Build the same voice agent in OpenAI Realtime, Gemini Live, and Pipecat-JS. A TypeScript comparison of latency, interruption handling, mid-stream function calling, and cost per minute.
Friday 05/06/2026
· 10 min readHybrid Search That Actually Works: BM25 + Embeddings + Reranking in TypeScript
Pure vector search misses exact-match queries like SKUs and error codes. Fix retrieval with hybrid search in TypeScript: BM25 + embeddings, fused with RRF, then reranked.
Wednesday 03/06/2026
· 11 min readPII Redaction Middleware: Strip Sensitive Data Before It Reaches the LLM
Build TypeScript middleware that redacts PII before it reaches the LLM, then re-hydrates the response - reversible redaction, audit logging, and a test suite.
Monday 01/06/2026
· 10 min readBuild an AI Eval Suite with Promptfoo: Catch Prompt Regressions Before Production
How to use Promptfoo to set up a TypeScript AI eval suite that catches prompt regressions in CI - deterministic asserts, LLM-as-judge, cost budgets, and a GitHub Actions workflow.
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.
Stay updated
Get notified when I publish new posts. No spam, unsubscribe anytime.