1<!DOCTYPE html><!--nNH_lHt5F8rnT1GeC9_EK--><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" href="/_next/static/media/797e433ab948586e-s.p.29207c2f.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/caa3a2e1cccd8315-s.p.3b6cae6d.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/chunks/a829e99be14ff06a.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/cf2e6d6325dd0ab6.js"/>
1<script src="/_next/static/chunks/236f7e5abd6f09ff.js" async=""></script>
1<script src="/_next/static/chunks/46555f69f67186d0.js" async=""></script>
1<script src="/_next/static/chunks/30ea11065999f7ac.js" async=""></script>
1<script src="/_next/static/chunks/turbopack-cc9fcb9af1a82ccc.js" async=""></script>
1<script src="/_next/static/chunks/ff1a16fafef87110.js" async=""></script>
1<script src="/_next/static/chunks/7340adf74ff47ec0.js" async=""></script>
1<script src="/_next/static/chunks/276269cd9dd2b6ff.js" async=""></script>
1<script src="/_next/static/chunks/793f24eab4306f49.js" async=""></script>
1<script src="/_next/static/chunks/c23b82b868410107.js" async=""></script>
1<script src="/_next/static/chunks/dbe1e446f66ec7c3.js" async=""></script>
1<script src="/_next/static/chunks/1fe8e668efd0f07d.js" async=""></script>
1<meta name="next-size-adjust" content=""/><title>Ray Vakil | AI Engineer & Full-Stack Developer</title><meta name="description" content="Ray Vakil is an expert AI Engineer, Full-Stack Software Engineer, and Technical Account Manager. Specialized in React, Next.js, Node.js, and building Autonomous Agentic Systems. Open for roles in AI, Software Engineering, and Technical Account Management."/><link rel="author" href="https://techinvolved.dev"/><meta name="author" content="Ray Vakil"/><meta name="keywords" content="AI Engineer,Technical Account Manager,Software Engineer,Full-Stack Web Developer,React Developer,Next.js Specialist,Ray Vakil,Agentic AI,Autonomous Agents,RAG Pipelines,Node.js Backend Developer,AI Integration,TechInvolved"/><meta name="robots" content="index, follow"/><meta name="googlebot" content="index, follow, max-video-preview:-1, max-image-preview:large, max-snippet:-1"/><link rel="canonical" href="https://techinvolved.dev"/><meta property="og:title" content="Ray Vakil | AI Engineer & Full-Stack Developer"/><meta property="og:description" content="Explore agentic AI workflows and high-performance web development projects by Ray Vakil."/><meta property="og:url" content="https://techinvolved.dev"/><meta property="og:site_name" content="TechInvolved"/><meta property="og:image" content="https://techinvolved.dev/TechInvolved-logo.jpg"/><meta property="og:image:width" content="1200"/><meta property="og:image:height" content="630"/><meta property="og:image:alt" content="TechInvolved Logo"/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="Ray Vakil | AI Engineer & Full-Stack Developer"/><meta name="twitter:description" content="Ray Vakil is an expert AI Engineer, Full-Stack Software Engineer, and Technical Account Manager. Specialized in React, Next.js, and Agentic Systems."/><meta name="twitter:image" content="https://techinvolved.dev/TechInvolved-logo.jpg"/><link rel="shortcut icon" href="/favicon.ico"/><link rel="icon" href="/favicon.ico"/><link rel="apple-touch-icon" href="/TechInvolved-logo.jpg"/>
1<script type="application/ld+json">{"@context":"https://schema.org","@type":"Person","name":"Ray Vakil","url":"https://techinvolved.dev","jobTitle":"AI Engineer & Full-Stack Software Developer","description":"Expert in Full-Stack Web Development, Autonomous Agents, RAG Pipelines, and Scalable Infrastructure. Specialized in React, Next.js, and Node.js.","brand":{"@type":"Brand","name":"TechInvolved"},"sameAs":["https://www.linkedin.com/in/rayvakil/"],"knowsAbout":["Full-Stack Web Development","React.js & Next.js","Node.js Backend Architecture","Agentic AI","Retrieval-Augmented Generation (RAG)","Autonomous Python Architectures","React Native Mobile Development","Scalable Web Infrastructure","Cloud Security","Web Scraping","Generative AI","Large Language Models (LLMs)","Multi-Modal AI Systems"],"worksFor":{"@type":"Organization","name":"TechInvolvedHQ"}}</script>
1<script type="application/ld+json">{"@context":"https://schema.org","@type":"Organization","name":"TechInvolvedHQ","url":"https://techinvolved.dev","logo":"https://techinvolved.dev/TechInvolved-logo.jpg","founder":{"@type":"Person","name":"Ray Vakil"},"description":"Architecting autonomous ecosystems, high-performance web infrastructure, and agent-driven commerce.","contactPoint":{"@type":"ContactPoint","telephone":"+18883621110","contactType":"customer service","email":"[email protected]"}}</script>
1<script type="application/ld+json">{"@context":"https://schema.org","@type":"Service","serviceType":"AI and Web Development Services","provider":{"@type":"Person","name":"Ray Vakil"},"description":"Custom AI agent development, RAG pipeline implementation, and high-performance full-stack web application development.","areaServed":"Worldwide","hasOfferCatalog":{"@type":"OfferCatalog","name":"Development Services","itemListElement":[{"@type":"Offer","itemOffered":{"@type":"Service","name":"Autonomous AI Agent Development"}},{"@type":"Offer","itemOffered":{"@type":"Service","name":"Full-Stack Next.js/React Development"}},{"@type":"Offer","itemOffered":{"@type":"Service","name":"RAG & LLM Integration"}}]}}</script>
1<script type="application/ld+json">{"@context":"https://schema.org","@type":"SoftwareApplication","name":"Saga Gateway","operatingSystem":"Web, macOS, Windows, Linux","applicationCategory":"DeveloperApplication","description":"An Out-of-Process MCP Gateway acting as a secure proxy between autonomous AI agents and critical financial APIs.","author":{"@type":"Person","name":"Ray Vakil"},"url":"https://www.sagagateway.com/"}</script>
1<script type="application/ld+json">{"@context":"https://schema.org","@type":"SoftwareApplication","name":"AuraDesk","applicationCategory":"BusinessApplication","description":"Autonomous Voice AI SaaS Engine for industry-agnostic appointment scheduling, carrier-level recording, and low-latency customer interaction.","author":{"@type":"Person","name":"Ray Vakil"}}</script>
1<script src="/_next/static/chunks/a6dad97d9634a72d.js" noModule=""></script>
1</head><body class="geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable antialiased"><div hidden=""><!--$--><!--/$--></div>
1<script>((a,b,c,d,e,f,g,h)=>{let i=document.documentElement,j=["light","dark"];function k(b){var c;(Array.isArray(a)?a:[a]).forEach(a=>{let c="class"===a,d=c&&f?e.map(a=>f[a]||a):e;c?(i.classList.remove(...d),i.classList.add(f&&f[b]?f[b]:b)):i.setAttribute(a,b)}),c=b,h&&j.includes(c)&&(i.style.colorScheme=c)}if(d)k(d);else try{let a=localStorage.getItem(b)||c,d=g&&"system"===a?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":a;k(d)}catch(a){}})("class","theme","system",null,["light","dark"],null,true,true)</script>
1<nav class="fixed top-0 left-0 right-0 z-50 flex flex-wrap justify-between items-center gap-2 sm:gap-4 px-4 py-2 sm:py-3 md:px-8 bg-background/60 backdrop-blur-md border-b border-white/10 shadow-sm" style="opacity:0;transform:translateY(-10px)"><a class="flex items-center gap-2 shrink-0" href="/"><div class="h-8 w-8 sm:h-10 sm:w-10 relative overflow-hidden rounded-lg border border-indigo-500/20"><img alt="TechInvolved Logo" loading="lazy" decoding="async" data-nimg="fill" class="object-cover" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="100vw" srcSet="/_next/image?url=%2FTechInvolved-logo.jpg&w=640&q=75 640w, /_next/image?url=%2FTechInvolved-logo.jpg&w=750&q=75 750w, /_next/image?url=%2FTechInvolved-logo.jpg&w=828&q=75 828w, /_next/image?url=%2FTechInvolved-logo.jpg&w=1080&q=75 1080w, /_next/image?url=%2FTechInvolved-logo.jpg&w=1200&q=75 1200w, /_next/image?url=%2FTechInvolved-logo.jpg&w=1920&q=75 1920w, /_next/image?url=%2FTechInvolved-logo.jpg&w=2048&q=75 2048w, /_next/image?url=%2FTechInvolved-logo.jpg&w=3840&q=75 3840w" src="/_next/image?url=%2FTechInvolved-logo.jpg&w=3840&q=75"/></div><span class="text-lg sm:text-xl font-bold tracking-tight text-foreground hidden sm:block">TechInvolvedHQ</span></a><div class="flex flex-row flex-wrap justify-end gap-1 sm:gap-4 items-center flex-1"><a href="/projects"><button data-slot="button" data-variant="ghost" data-size="sm" class="inline-flex items-center justify-center whitespace-nowrap font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:hover:bg-accent/50 h-8 rounded-md gap-1.5 has-[>svg]:px-2.5 px-2 sm:px-4 text-xs sm:text-sm text-muted-foreground hover:text-foreground hover:bg-accent">Projects</button></a><a href="/donate"><button data-slot="button" data-variant="ghost" data-size="sm" class="items-center justify-center whitespace-nowrap font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:hover:bg-accent/50 h-8 rounded-md gap-1.5 has-[>svg]:px-2.5 px-2 sm:px-4 text-xs sm:text-sm text-muted-foreground hover:text-foreground hover:bg-accent hidden sm:inline-flex">Donate</button></a><div class="flex items-center gap-2 ml-1"><div class="hidden sm:block"><button data-slot="button" data-variant="ghost" data-size="icon" class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50 size-9 w-9 px-0"></button></div><button data-slot="button" data-variant="default" data-size="sm" class="inline-flex items-center justify-center whitespace-nowrap transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive bg-foreground text-background hover:bg-foreground
1/90 rounded-md gap-1.5 has-[>svg]:px-2.5 font-semibold px-3 h-8 sm:h-9 text-xs sm:text-sm" type="button" aria-haspopup="dialog" aria-expanded="false" aria-controls="radix-_R_2tadb_" data-state="closed">Contact</button></div></div></nav><main class="relative z-10 min-h-screen bg-transparent text-slate-900 dark:text-slate-100 font-sans selection:bg-indigo-500/30 p-4 pt-24 md:p-8 md:pt-28"><div class="w-full mx-auto max-w-6xl"><div class="text-center mb-12 px-4" style="opacity:0;transform:scale(0.95)"><div class="flex justify-center items-center gap-3 mb-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-bot h-8 w-8 text-indigo-500 drop-shadow-md" aria-hidden="true"><path d="M12 8V4H8"></path><rect width="16" height="12" x="4" y="8" rx="2"></rect><path d="M2 14h2"></path><path d="M20 14h2"></path><path d="M15 13v2"></path><path d="M9 13v2"></path></svg><h1 class="text-4xl font-bold text-slate-900 dark:text-slate-100 font-mono uppercase tracking-tight">Project Architecture</h1></div><p class="text-slate-500 dark:text-slate-400 font-mono mb-8 text-sm md:text-base uppercase tracking-widest max-w-2xl mx-auto">Technical specifications for Agentic AI, Autonomous Systems, and Full-Stack Engineering projects.</p></div><div class="w-full border-t border-slate-200 dark:border-slate-800 bg-white dark:bg-slate-950"><div class="hidden md:grid grid-cols-12 gap-4 py-4 px-6 text-xs font-mono uppercase tracking-widest text-slate-500 dark:text-slate-400 border-b border-slate-200 dark:border-slate-800"><div class="col-span-5">Project Name</div><div class="col-span-5">Tech Stack</div><div class="col-span-2 text-right">Status / Year</div></div><div class="border-b border-slate-200 dark:border-slate-800 group" style="opacity:0"><div class="grid grid-cols-1 md:grid-cols-12 gap-2 md:gap-4 py-6 px-4 md:px-6 cursor-pointer hover:bg-slate-50 dark:hover:bg-slate-900/50 transition-colors items-center"><div class="md:col-span-5 font-bold text-slate-900 dark:text-slate-100 uppercase font-mono tracking-tight group-hover:text-indigo-500 dark:group-hover:text-indigo-400 transition-colors flex items-center gap-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down h-4 w-4 shrink-0 transition-transform duration-200 rotate-180 text-indigo-500" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg>Saga Gateway</div><div class="md:col-span-5 text-xs md:text-sm font-mono text-slate-500 dark:text-slate-400 ml-6 md:ml-0">FastAPI, Next.js, PostgreSQL</div><div class="md:col-span-2 text-left md:text-right text-xs md:text-sm font-mono text-slate-500 dark:text-slate-400 ml-6 md:ml-0 mt-1 md:mt-0">Production / 2026</div></div><div class="overflow-hidden" style="height:0px;opacity:0"><div class="p-4 md:p-8 bg-slate-50 dark:bg-slate-900/30 border-t border-slate-200 dark:border-slate-800"><div class="h-full relative overflow-hidden rounded-lg col-span-1 md:col-span-2 lg:col-span-3"><div class="pointer-events-none absolute inset-0 z-10 transition-opacity duration-200" style="opacity:0;background:transparent"></div><div data-slot="card" class="bg-card/40 backdrop-blur-md flex flex-col gap-6 rounded-xl border py-6 pointer-events-auto border-indigo-500/30 text-foreground shadow-lg"><div data-slot="card-header" class="@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6 text-center pb-4"><div class="flex flex-col sm:flex-row justify-center items-center gap-3 mb-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-network h-10 w-10 text-indigo-400 shrink-0" aria-hidden="true"><rect x="16" y="16" width="6" height="6" rx="1"></rect><rect x="2" y="16" width="6" height="6" rx="1"></rect><rect x="9" y="2" width="6" height="6" rx="1"></rect><path d="M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3"></path><path d="M12 12V8"></path></svg><div data-slot="card-title" class="text-2xl md:text-3xl font-bold text-foreground">Saga Gateway</div></div><div data-slot="card-description" class="md:text-sm text-indigo-300 text-lg">An Out-of-Process MCP Gateway acting as a secure proxy between autonomous AI agents and critical financial APIs.</div><div class="mt-2 flex justify-center gap-2"><span data-slot="badge" class="inline-flex items-center justify-center rounded-full border px-2 py-0.5 text-sm md:text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden border-transparent text-primary-foreground [a&]:hover:bg-primary/90 bg-indigo-600 hover:bg-indigo-700">Systems Architecture</span><span data-slot="badge" class="inline-flex items-center justify-center rounded-full border px-2 py-0.5 text-sm md:text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden [a&]:hover:bg-accent [a&]:hover:text-accent-foreground border-indigo-500 text-indigo-400">Security & Scale</span></div></div>
1<div data-slot="card-content" class="px-6 space-y-6"><div><h3 class="text-xl font-semibold text-indigo-400 mb-3 flex items-center gap-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-cpu h-5 w-5" aria-hidden="true"><path d="M12 20v2"></path><path d="M12 2v2"></path><path d="M17 20v2"></path><path d="M17 2v2"></path><path d="M2 12h2"></path><path d="M2 17h2"></path><path d="M2 7h2"></path><path d="M20 12h2"></path><path d="M20 17h2"></path><path d="M20 7h2"></path><path d="M7 20v2"></path><path d="M7 2v2"></path><rect x="4" y="4" width="16" height="16" rx="2"></rect><rect x="8" y="8" width="8" height="8" rx="1"></rect></svg> Technical Stack</h3><div class="flex flex-wrap gap-2"><span data-slot="badge" class="inline-flex items-center justify-center rounded-full border px-2 py-0.5 md:text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden [a&]:hover:bg-secondary/90 bg-muted text-muted-foreground border-border/50 text-sm">Next.js (React)</span><span data-slot="badge" class="inline-flex items-center justify-center rounded-full border px-2 py-0.5 md:text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden [a&]:hover:bg-secondary/90 bg-muted text-muted-foreground border-border/50 text-sm">Python (FastAPI)</span><span data-slot="badge" class="inline-flex items-center justify-center rounded-full border px-2 py-0.5 md:text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden [a&]:hover:bg-secondary/90 bg-muted text-muted-foreground border-border/50 text-sm">PostgreSQL</span><span data-slot="badge" class="inline-flex items-center justify-center rounded-full border px-2 py-0.5 md:text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden [a&]:hover:bg-secondary/90 bg-muted text-muted-foreground border-border/50 text-sm">Redis (Pub/Sub)</span><span data-slot="badge" class="inline-flex items-center justify-center rounded-full border px-2 py-0.5 md:text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden [a&]:hover:bg-secondary/90 bg-muted text-muted-foreground border-border/50 text-sm">Stripe API</span><span data-slot="badge" class="inline-flex items-center justify-center rounded-full border px-2 py-0.5 md:text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden [a&]:hover:bg-secondary/90 bg-muted text-muted-foreground border-border/50 text-sm">AWS (EC2, RDS)</span><span data-slot="badge" class="inline-flex items-center justify-center rounded-full border px-2 py-0.5 md:text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden [a&]:hover:bg-secondary/90 bg-muted text-muted-foreground border-border/50 text-sm">
1Docker</span><span data-slot="badge" class="inline-flex items-center justify-center rounded-full border px-2 py-0.5 md:text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden [a&]:hover:bg-secondary/90 bg-muted text-muted-foreground border-border/50 text-sm">Saga Pattern</span></div></div><div><h3 class="text-xl font-semibold text-indigo-400 mb-3 flex items-center gap-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-network h-5 w-5" aria-hidden="true"><rect x="16" y="16" width="6" height="6" rx="1"></rect><rect x="2" y="16" width="6" height="6" rx="1"></rect><rect x="9" y="2" width="6" height="6" rx="1"></rect><path d="M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3"></path><path d="M12 12V8"></path></svg>Technical Achievement</h3><p class="text-muted-foreground leading-relaxed">Designed and engineered an execution guardrail API that enforces strict Human-In-The-Loop (HITL) approval workflows. By leveraging the Saga Pattern for distributed transactions, it provides a guaranteed rollback mechanism for AI operations, bridging local standard I/O execution with a remote stateless HTTP backend seamlessly.</p></div><div><h3 class="text-xl font-semibold text-indigo-400 mb-3 flex items-center gap-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layers h-5 w-5" aria-hidden="true"><path d="M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z"></path><path d="M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12"></path><path d="M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17"></path></svg>Engineering Highlights</h3><div class="grid grid-cols-1 md:grid-cols-2 gap-4"><div class="p-4 bg-muted/50 rounded-lg border border-border/50 flex flex-col gap-2"><div class="flex items-center gap-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database h-5 w-5 text-indigo-400" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg><p class="font-semibold text-foreground">Saga Pattern Orchestrator</p></div><p class="text-muted-foreground text-sm leading-relaxed">Engineered a robust transaction state machine in PostgreSQL, achieving exactly-once execution semantics for high-stakes AI tool calls with a guaranteed 'rollback' matrix.</p></div><div class="p-4 bg-muted/50 rounded-lg border border-border/50 flex flex-col gap-2"><div class="flex items-center gap-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layers h-5 w-5 text-amber-400" aria-hidden="true"><path d="M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z"></path><path d="M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12"></path><path d="M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17"></path></svg><p class="font-semibold text-foreground">Idempotency & Concurrency</p></div><p class="text-muted-foreground text-sm leading-relaxed">Resolved extreme concurrency race conditions (e.g., 10 identical payloads in 1ms) by leveraging native database constraints on idempotency keys to prevent duplicate execution.</p></div><div class="p-4 bg-muted/50 rounded-lg border border-border/50 flex flex-col gap-2"><div class="flex items-center gap-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield-alert h-5 w-5 text-emerald-400" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path><path d="M12 8v4"></path><path d="M12 16h.01"></path></svg><p class="font-semibold text-foreground">API Gateway Hardening</p></div><p class="text-muted-foreground text-sm leading-relaxed">Patched a critical API key exhaustion vulnerability with a custom in-memory TTLCache, and integrated rate limiting to physically block
1infinite-loop AI agent requests.</p></div><div class="p-4 bg-muted/50 rounded-lg border border-border/50 flex flex-col gap-2"><div class="flex items-center gap-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-network h-5 w-5 text-rose-400" aria-hidden="true"><rect x="16" y="16" width="6" height="6" rx="1"></rect><rect x="2" y="16" width="6" height="6" rx="1"></rect><rect x="9" y="2" width="6" height="6" rx="1"></rect><path d="M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3"></path><path d="M12 12V8"></path></svg><p class="font-semibold text-foreground">Open-Source CLI Proxy</p></div><p class="text-muted-foreground text-sm leading-relaxed">Built a custom Node.js bridge to intercept standard local I/O from AI agents and map it to remote stateless HTTP POST requests, solving the async polling problem.</p></div><div class="p-4 bg-muted/50 rounded-lg border border-border/50 flex flex-col gap-2"><div class="flex items-center gap-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-cpu h-5 w-5 text-sky-400" aria-hidden="true"><path d="M12 20v2"></path><path d="M12 2v2"></path><path d="M17 20v2"></path><path d="M17 2v2"></path><path d="M2 12h2"></path><path d="M2 17h2"></path><path d="M2 7h2"></path><path d="M20 12h2"></path><path d="M20 17h2"></path><path d="M20 7h2"></path><path d="M7 20v2"></path><path d="M7 2v2"></path><rect x="4" y="4" width="16" height="16" rx="2"></rect><rect x="8" y="8" width="8" height="8" rx="1"></rect></svg><p class="font-semibold text-foreground">Enterprise BYOC Licensing</p></div><p class="text-muted-foreground text-sm leading-relaxed">Packaged the backend into a closed-source Docker container with cryptographic license enforcement, enabling secure Enterprise Bring-Your-Own-Cloud deployments without leaking IP.</p></div><div class="p-4 bg-muted/50 rounded-lg border border-border/50 flex flex-col gap-2"><div class="flex items-center gap-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link h-5 w-5 text-purple-400" aria-hidden="true"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg><p class="font-semibold text-foreground">Usage-Based Metered Billing</p></div><p class="text-muted-foreground text-sm leading-relaxed">Integrated Stripe v2 Billing to seamlessly charge customers per executed API call, directly hooking the execution router to meter events.</p></div></div></div></div></div></div></div></div></div><div class="border-b border-slate-200 dark:border-slate-800 group" style="opacity:0"><div class="grid grid-cols-1 md:grid-cols-12 gap-2 md:gap-4 py-6 px-4 md:px-6 cursor-pointer hover:bg-slate-50 dark:hover:bg-slate-900/50 transition-colors items-center"><div class="md:col-span-5 font-bold text-slate-900 dark:text-slate-100 uppercase font-mono tracking-tight group-hover:text-indigo-500 dark:group-hover:text-indigo-400 transition-colors flex items-center gap-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down h-4 w-4 shrink-0 transition-transform duration-200 text-slate-500 dark:text-slate-400" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg>AuraDesk</div><div class="md:col-span-5 text-xs md:text-sm font-mono text-slate-500 dark:text-slate-400 ml-6 md:ml-0">Next.js, Python, Pipecat, Gemini</div><div class="md:col-span-2 text-left md:text-right text-xs md:text-sm font-mono text-slate-500 dark:text-slate-400 ml-6 md:ml-0 mt-1 md:mt-0">Production / 2026</div></div></div><div class="border-b border-slate-200 dark:border-slate-800 group" style="opacity:0"><div class="grid grid-cols-1 md:grid-cols-12 gap-2 md:gap-4 py-6 px-4 md:px-6 cursor-pointer hover:bg-slate-50 dark:hover:bg-slate-900/50 transition-colors items-center"><div class="md:col-span-5 font-bold text-slate-900 dark:text-slate-100 uppercase font-mono tracking-tight group-hover:text-indigo-500 dark:group-hover:text-indigo-400 transition-colors flex items-center gap-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down h-4 w-4 shrink-0 transition-transform duration-200 text-slate-500 dark:text-slate-400" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg>Little Pockets</div><div class="md:col-span-5 text-xs md:text-sm font-mono text-slate-500 dark:text-slate-400 ml-6 md:ml-0">Framer, React, Tailwind CSS</div><div class="md:col-span-2 text-left md:text-right text-xs md:text-sm font-mono text-slate-500 dark:text-slate-400 ml-6 md:ml-0 mt-1 md:mt-0">Active / 2025</div></div></div><div class="border-b border-slate-200 dark:border-slate-800 group" style="opacity:0"><div class="grid grid-cols-1 md:grid-cols-12 gap-2 md:gap-4 py-6 px-4 md:px-6 cursor-pointer hover:bg-slate-50 dark:hover:bg-slate-900/50 transition-colors items-center"><div class="md:col-span-5 font-bold text-slate-900 dark:text-slate-100 uppercase font-mono tracking-tight group-hover:text-indigo-500 dark:group-hover:text-indigo-400 transition-colors flex items-center gap-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down h-4 w-4 shrink-0 transition-transform duration-200 text-slate-500 dark:text-slate-400" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg>Instagram Automator</div><div class="md:col-span-5 text-xs md:text-sm font-mono text-slate-500 dark:text-slate-400 ml-6 md:ml-0">
1Chrome API, TypeScript</div><div class="md:col-span-2 text-left md:text-right text-xs md:text-sm font-mono text-slate-500 dark:text-slate-400 ml-6 md:ml-0 mt-1 md:mt-0">Maintenance / 2026</div></div></div><div class="border-b border-slate-200 dark:border-slate-800 group" style="opacity:0"><div class="grid grid-cols-1 md:grid-cols-12 gap-2 md:gap-4 py-6 px-4 md:px-6 cursor-pointer hover:bg-slate-50 dark:hover:bg-slate-900/50 transition-colors items-center"><div class="md:col-span-5 font-bold text-slate-900 dark:text-slate-100 uppercase font-mono tracking-tight group-hover:text-indigo-500 dark:group-hover:text-indigo-400 transition-colors flex items-center gap-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down h-4 w-4 shrink-0 transition-transform duration-200 text-slate-500 dark:text-slate-400" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg>Project OmniCart</div><div class="md:col-span-5 text-xs md:text-sm font-mono text-slate-500 dark:text-slate-400 ml-6 md:ml-0">React Native, Firebase, Gemini</div><div class="md:col-span-2 text-left md:text-right text-xs md:text-sm font-mono text-slate-500 dark:text-slate-400 ml-6 md:ml-0 mt-1 md:mt-0">Completed / 2025</div></div></div><div class="border-b border-slate-200 dark:border-slate-800 group" style="opacity:0"><div class="grid grid-cols-1 md:grid-cols-12 gap-2 md:gap-4 py-6 px-4 md:px-6 cursor-pointer hover:bg-slate-50 dark:hover:bg-slate-900/50 transition-colors items-center"><div class="md:col-span-5 font-bold text-slate-900 dark:text-slate-100 uppercase font-mono tracking-tight group-hover:text-indigo-500 dark:group-hover:text-indigo-400 transition-colors flex items-center gap-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down h-4 w-4 shrink-0 transition-transform duration-200 text-slate-500 dark:text-slate-400" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg>Social Media Automator</div><div class="md:col-span-5 text-xs md:text-sm font-mono text-slate-500 dark:text-slate-400 ml-6 md:ml-0">Python, Puppeteer</div><div class="md:col-span-2 text-left md:text-right text-xs md:text-sm font-mono text-slate-500 dark:text-slate-400 ml-6 md:ml-0 mt-1 md:mt-0">Completed / 2025</div></div></div><div class="border-b border-slate-200 dark:border-slate-800 group" style="opacity:0"><div class="grid grid-cols-1 md:grid-cols-12 gap-2 md:gap-4 py-6 px-4 md:px-6 cursor-pointer hover:bg-slate-50 dark:hover:bg-slate-900/50 transition-colors items-center"><div class="md:col-span-5 font-bold text-slate-900 dark:text-slate-100 uppercase font-mono tracking-tight group-hover:text-indigo-500 dark:group-hover:text-indigo-400 transition-colors flex items-center gap-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down h-4 w-4 shrink-0 transition-transform duration-200 text-slate-500 dark:text-slate-400" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg>PineScript Bot</div><div class="md:col-span-5 text-xs md:text-sm font-mono text-slate-500 dark:text-slate-400 ml-6 md:ml-0">TradingView, PineScript</div><div class="md:col-span-2 text-left md:text-right text-xs md:text-sm font-mono text-slate-500 dark:text-slate-400 ml-6 md:ml-0 mt-1 md:mt-0">Legacy / 2024</div></div></div></div></div><footer class="max-w-6xl mx-auto mt-20 py-10 border-t border-slate-200 dark:border-slate-800 text-center text-slate-500 dark:text-slate-400 text-xs font-mono uppercase tracking-widest space-y-2"><p>© 2026 TechInvolvedHQ. Architected by Ray Vakil.</p><p><a href="tel:+18883621110" class="hover:text-slate-900 dark:hover:text-slate-100 transition-colors">TechInvolved HQ +1 (888) 362-1110</a></p></footer></main><!--$--><!--/$--><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><!--/$-->
1<script src="/_next/static/chunks/cf2e6d6325dd0ab6.js" id="_R_" async=""></script>
1<script>(self.__next_f=self.__next_f||[]).push([0])</script>
1<script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n6:I[68027,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/7340adf74ff47ec0.js\"],\"default\"]\n:HL[\"/_next/static/chunks/a829e99be14ff06a.css\",\"style\"]\n:HL[\"/_next/static/media/797e433ab948586e-s.p.29207c2f.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/caa3a2e1cccd8315-s.p.3b6cae6d.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n"])</script>
1<script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"nNH-lHt5F8rnT1GeC9_EK\",\"c\":[\"\",\"projects\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"projects\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/a829e99be14ff06a.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/276269cd9dd2b6ff.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/793f24eab4306f49.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-2\",{\"src\":\"/_next/static/chunks/c23b82b868410107.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"name\\\":\\\"Ray Vakil\\\",\\\"url\\\":\\\"https://techinvolved.dev\\\",\\\"jobTitle\\\":\\\"AI Engineer \u0026 Full-Stack Software Developer\\\",\\\"description\\\":\\\"Expert in Full-Stack Web Development, Autonomous Agents, RAG Pipelines, and Scalable Infrastructure. Specialized in React, Next.js, and Node.js.\\\",\\\"brand\\\":{\\\"@type\\\":\\\"Brand\\\",\\\"name\\\":\\\"TechInvolved\\\"},\\\"sameAs\\\":[\\\"https://www.linkedin.com/in/rayvakil/\\\"],\\\"knowsAbout\\\":[\\\"Full-Stack Web Development\\\",\\\"React.js \u0026 Next.js\\\",\\\"Node.js Backend Architecture\\\",\\\"Agentic AI\\\",\\\"Retrieval-Augmented Generation (RAG)\\\",\\\"Autonomous Python Architectures\\\",\\\"React Native Mobile Development\\\",\\\"Scalable Web Infrastructure\\\",\\\"Cloud Security\\\",\\\"Web Scraping\\\",\\\"Generative AI\\\",\\\"Large Language Models (LLMs)\\\",\\\"Multi-Modal AI Systems\\\"],\\\"worksFor\\\":{\\\"@type\\\":\\\"Organization\\\",\\\"name\\\":\\\"TechInvolvedHQ\\\"}}\"}}],[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Organization\\\",\\\"name\\\":\\\"TechInvolvedHQ\\\",\\\"url\\\":\\\"https://techinvolved.dev\\\",\\\"logo\\\":\\\"https://techinvolved.dev/TechInvolved-logo.jpg\\\",\\\"founder\\\":{\\\"@type\\\":\\\"Person\\\",\\\"name\\\":\\\"Ray Vakil\\\"},\\\"description\\\":\\\"Architecting autonomous ecosystems, high-performance web infrastructure, and agent-driven commerce.\\\",\\\"contactPoint\\\":{\\\"@type\\\":\\\"ContactPoint\\\",\\\"telephone\\\":\\\"+18883621110\\\",\\\"contactType\\\":\\\"customer service\\\",\\\"email\\\":\\\"[email protected]\\\"}}\"}}],[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Service\\\",\\\"serviceType\\\":\\\"AI and Web Development Services\\\",\\\"provider\\\":{\\\"@type\\\":\\\"Person\\\",\\\"name\\\":\\\"Ray Vakil\\\"},\\\"description\\\":\\\"Custom AI agent development, RAG pipeline implementation, and high-performance full-stack web application development.\\\",\\\"areaServed\\\":\\\"Worldwide\\\",\\\"hasOfferCatalog\\\":{\\\"@type\\\":\\\"OfferCatalog\\\",\\\"name\\\":\\\"Development Services\\\",\\\"itemListElement\\\":[{\\\"@type\\\":\\\"Offer\\\",\\\"itemOffered\\\":{\\\"@type\\\":\\\"Service\\\",\\\"name\\\":\\\"Autonomous AI Agent Development\\\"}},{\\\"@type\\\":\\\"Offer\\\",\\\"itemOffered\\\":{\\\"@type\\\":\\\"Service\\\",\\\"name\\\":\\\"Full-Stack Next.js/React Development\\\"}},{\\\"@type\\\":\\\"Offer\\\",\\\"itemOffered\\\":{\\\"@type\\\":\\\"Service\\\",\\\"name\\\":\\\"RAG \u0026 LLM Integration\\\"}}]}}\"}}],[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"SoftwareApplication\\\",\\\"name\\\":\\\"Saga Gateway\\\",\\\"o
1peratingSystem\\\":\\\"Web, macOS, Windows, Linux\\\",\\\"applicationCategory\\\":\\\"DeveloperApplication\\\",\\\"description\\\":\\\"An Out-of-Process MCP Gateway acting as a secure proxy between autonomous AI agents and critical financial APIs.\\\",\\\"author\\\":{\\\"@type\\\":\\\"Person\\\",\\\"name\\\":\\\"Ray Vakil\\\"},\\\"url\\\":\\\"https://www.sagagateway.com/\\\"}\"}}],[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"SoftwareApplication\\\",\\\"name\\\":\\\"AuraDesk\\\",\\\"applicationCategory\\\":\\\"BusinessApplication\\\",\\\"description\\\":\\\"Autonomous Voice AI SaaS Engine for industry-agnostic appointment scheduling, carrier-level recording, and low-latency customer interaction.\\\",\\\"author\\\":{\\\"@type\\\":\\\"Person\\\",\\\"name\\\":\\\"Ray Vakil\\\"}}\"}}]]}],\"$L2\"]}]]}],{\"children\":[\"$L3\",{\"children\":[\"$L4\",{},null,false,false]},null,false,false]},null,false,false],\"$L5\",false]],\"m\":\"$undefined\",\"G\":[\"$6\",[]],\"S\":true}\n"])</script>
1<script>self.__next_f.push([1,"7:I[27423,[\"/_next/static/chunks/276269cd9dd2b6ff.js\",\"/_next/static/chunks/793f24eab4306f49.js\",\"/_next/static/chunks/c23b82b868410107.js\"],\"ThemeProvider\"]\n8:I[147,[\"/_next/static/chunks/276269cd9dd2b6ff.js\",\"/_next/static/chunks/793f24eab4306f49.js\",\"/_next/static/chunks/c23b82b868410107.js\"],\"default\"]\n9:I[45678,[\"/_next/static/chunks/276269cd9dd2b6ff.js\",\"/_next/static/chunks/793f24eab4306f49.js\",\"/_next/static/chunks/c23b82b868410107.js\"],\"default\"]\na:I[39756,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/7340adf74ff47ec0.js\"],\"default\"]\nb:I[37457,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/7340adf74ff47ec0.js\"],\"default\"]\nc:I[57215,[\"/_next/static/chunks/276269cd9dd2b6ff.js\",\"/_next/static/chunks/793f24eab4306f49.js\",\"/_next/static/chunks/c23b82b868410107.js\"],\"SpeedInsights\"]\nd:I[47257,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/7340adf74ff47ec0.js\"],\"ClientPageRoot\"]\ne:I[63936,[\"/_next/static/chunks/276269cd9dd2b6ff.js\",\"/_next/static/chunks/793f24eab4306f49.js\",\"/_next/static/chunks/c23b82b868410107.js\",\"/_next/static/chunks/dbe1e446f66ec7c3.js\",\"/_next/static/chunks/1fe8e668efd0f07d.js\"],\"default\"]\n11:I[97367,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/7340adf74ff47ec0.js\"],\"OutletBoundary\"]\n12:\"$Sreact.suspense\"\n14:I[97367,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/7340adf74ff47ec0.js\"],\"ViewportBoundary\"]\n16:I[97367,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/7340adf74ff47ec0.js\"],\"MetadataBoundary\"]\n"])</script>
1<script>self.__next_f.push([1,"2:[\"$\",\"body\",null,{\"className\":\"geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable antialiased\",\"children\":[[\"$\",\"$L7\",null,{\"attribute\":\"class\",\"defaultTheme\":\"system\",\"enableSystem\":true,\"disableTransitionOnChange\":true,\"children\":[[\"$\",\"$L8\",null,{}],[\"$\",\"$L9\",null,{}],[\"$\",\"$La\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$Lb\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],[\"$\",\"$Lc\",null,{}]]}]\n"])</script>
1<script>self.__next_f.push([1,"3:[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$La\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$Lb\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}]\n4:[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$Ld\",null,{\"Component\":\"$e\",\"serverProvidedParams\":{\"searchParams\":{},\"params\":{},\"promises\":[\"$@f\",\"$@10\"]}}],[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/dbe1e446f66ec7c3.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/1fe8e668efd0f07d.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$L11\",null,{\"children\":[\"$\",\"$12\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@13\"}]}]]}]\n5:[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L14\",null,{\"children\":\"$L15\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L16\",null,{\"children\":[\"$\",\"$12\",null,{\"name\":\"Next.Metadata\",\"children\":\"$L17\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}]\n"])</script>
1<script>self.__next_f.push([1,"f:{}\n10:\"$4:props:children:0:props:serverProvidedParams:params\"\n"])</script>
1<script>self.__next_f.push([1,"15:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script>
1<script>self.__next_f.push([1,"18:I[27201,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/7340adf74ff47ec0.js\"],\"IconMark\"]\n13:null\n"])</script>
1<script>self.__next_f.push([1,"17:[[\"$\",\"title\",\"0\",{\"children\":\"Ray Vakil | AI Engineer \u0026 Full-Stack Developer\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Ray Vakil is an expert AI Engineer, Full-Stack Software Engineer, and Technical Account Manager. Specialized in React, Next.js, Node.js, and building Autonomous Agentic Systems. Open for roles in AI, Software Engineering, and Technical Account Management.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"author\",\"href\":\"https://techinvolved.dev\"}],[\"$\",\"meta\",\"3\",{\"name\":\"author\",\"content\":\"Ray Vakil\"}],[\"$\",\"meta\",\"4\",{\"name\":\"keywords\",\"content\":\"AI Engineer,Technical Account Manager,Software Engineer,Full-Stack Web Developer,React Developer,Next.js Specialist,Ray Vakil,Agentic AI,Autonomous Agents,RAG Pipelines,Node.js Backend Developer,AI Integration,TechInvolved\"}],[\"$\",\"meta\",\"5\",{\"name\":\"robots\",\"content\":\"index, follow\"}],[\"$\",\"meta\",\"6\",{\"name\":\"googlebot\",\"content\":\"index, follow, max-video-preview:-1, max-image-preview:large, max-snippet:-1\"}],[\"$\",\"link\",\"7\",{\"rel\":\"canonical\",\"href\":\"https://techinvolved.dev\"}],[\"$\",\"meta\",\"8\",{\"property\":\"og:title\",\"content\":\"Ray Vakil | AI Engineer \u0026 Full-Stack Developer\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:description\",\"content\":\"Explore agentic AI workflows and high-performance web development projects by Ray Vakil.\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:url\",\"content\":\"https://techinvolved.dev\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:site_name\",\"content\":\"TechInvolved\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:image\",\"content\":\"https://techinvolved.dev/TechInvolved-logo.jpg\"}],[\"$\",\"meta\",\"13\",{\"property\":\"og:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"14\",{\"property\":\"og:image:height\",\"content\":\"630\"}],[\"$\",\"meta\",\"15\",{\"property\":\"og:image:alt\",\"content\":\"TechInvolved Logo\"}],[\"$\",\"meta\",\"16\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"17\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"18\",{\"name\":\"twitter:title\",\"content\":\"Ray Vakil | AI Engineer \u0026 Full-Stack Developer\"}],[\"$\",\"meta\",\"19\",{\"name\":\"twitter:description\",\"content\":\"Ray Vakil is an expert AI Engineer, Full-Stack Software Engineer, and Technical Account Manager. Specialized in React, Next.js, and Agentic Systems.\"}],[\"$\",\"meta\",\"20\",{\"name\":\"twitter:image\",\"content\":\"https://techinvolved.dev/TechInvolved-logo.jpg\"}],[\"$\",\"link\",\"21\",{\"rel\":\"shortcut icon\",\"href\":\"/favicon.ico\"}],[\"$\",\"link\",\"22\",{\"rel\":\"icon\",\"href\":\"/favicon.ico\"}],[\"$\",\"link\",\"23\",{\"rel\":\"apple-touch-icon\",\"href\":\"/TechInvolved-logo.jpg\"}],[\"$\",\"$L18\",\"24\",{}]]\n"])</script>
1<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"4f32e7a4dd344793bc6b33fcf8f15ab9","r":1,"spa":2}' crossorigin="anonymous"></script>
1 2</body></html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.