Skip to main content
← All posts
Stack10 min readMar 2026

The AI Stack I Use to Run 20+ Production Systems

Every tool, framework, and service I use across 20+ production AI systems — with why I chose each one and what I'd change today.

Tech StackAI ToolsProductionArchitectureOpen Source
D

Dhruv Tomar

AI Solutions Architect

Tech Stack

LangGraphFastAPINext.jsSupabasen8nClaudeVercelAWS

Architecture

Frontend (Next.js/Vercel) -> API Layer (FastAPI/AWS) -> AI Orchestration (LangGraph) -> Data (Supabase + pgvector + Redis) -> Automation (n8n) -> Communication (Twilio + Gmail)
20+ systems running
99.7% avg uptime
$0.03/query avg cost
43 open-source skills

People keep asking what tools I use. Here's the complete, honest list — including what I tried and dropped.

LLMs: Claude (primary), GPT-4o (fallback), Gemini (vision + voice) Claude is my default for everything text — better instruction following, longer context, more reliable structured output. GPT-4o is the fallback when Claude is rate-limited. Gemini handles vision tasks (image analysis, screen understanding) and voice (Gemini Live for real-time conversation). I never use a single LLM provider. Multi-provider routing is non-negotiable for production.

AI Orchestration: LangGraph Tried LangChain (too abstracted), CrewAI (too opinionated), AutoGen (too research-y). LangGraph hits the sweet spot — it's a graph-based state machine where you control every node. I can see exactly what my agent is doing, add custom retry logic, and debug without fighting the framework. Every production agent I build runs on LangGraph.

Backend: FastAPI (Python) Fast, typed, async, and every AI library speaks Python. Django and Flask are fine but FastAPI's automatic OpenAPI docs and Pydantic validation save hours. Every backend I build follows the same pattern: thin routes -> service layer -> repository layer -> database. Clean separation. Easy testing.

Frontend: Next.js 15 + React + Tailwind CSS App Router, server components, streaming responses. Deployed on Vercel. The combination of RSC for static content and client components for interactive AI features is unbeatable. Tailwind v4 is a significant improvement — native CSS variables, no config file needed.

Database: Supabase (PostgreSQL + pgvector) One platform for relational data, vector embeddings, auth, real-time subscriptions, and edge functions. The pgvector extension means I don't need a separate Pinecone or Weaviate. For 90% of AI products, Supabase is the only database you need. I add Redis only when I need sub-millisecond caching or rate limiting.

Automation: n8n (self-hosted) 218 workflows, 54 active in production. n8n is the backbone of every non-real-time automation — lead scoring, email sequences, report generation, CRM syncing, webhook processing. Self-hosted on a $20/month VPS. Way more reliable than Zapier and 10x cheaper at scale.

Communication: Twilio (voice + WhatsApp), Gmail API, Telegram Twilio for anything phone-related — calls, SMS, WhatsApp Business. Gmail API for email automation. Telegram for internal alerts and agent-to-human escalation. Vapi sits on top of Twilio for voice AI specifically.

Deployment: Vercel (frontend), AWS ECS (backend), Modal (serverless GPU) Frontend always goes to Vercel — zero config, automatic previews, edge network. Backend goes to AWS ECS Fargate — containerized, auto-scaling, no servers to manage. GPU workloads (Whisper, image generation) go to Modal — pay per second, cold starts under 2 seconds.

Skills & Agents: Claude Code + skills.sh 43 open-source skills that snap into Claude Code. Each skill is a SKILL.md file that teaches the AI how to perform a specific task — lead scraping, email campaigns, video editing, deployment. This is my secret weapon. I can spin up a new automation in minutes by composing existing skills.

  • -What I Dropped:
  • -Pinecone — pgvector does the same thing without another service to manage
  • -LangChain — too many abstractions, hard to debug, replaced with LangGraph
  • -Zapier — expensive at scale, limited logic, replaced with n8n
  • -OpenAI exclusively — too risky as single provider, added Claude + Gemini
  • -MongoDB — went all-in on PostgreSQL/Supabase for consistency
  • -Heroku — moved to AWS ECS for cost and control

The Meta-Stack: The real insight isn't the individual tools — it's the architecture. Every system I build follows the same layers: Frontend -> API -> AI Orchestration -> Data -> Automation -> Communication. The tools can change. The layers don't. This is what lets me ship 20+ systems without drowning in complexity.

If you're building AI products and want to move fast, steal this stack. It's production-tested, cost-optimized, and everything is either open-source or has a generous free tier.

Want to build something like this?

I architect and deploy end-to-end AI systems — from MVP to revenue.

Let's Talk