Mickael.
← Back to Blog
Stack · 7 min ·

The stack I use to build SaaS with AI in 2026

Next.js 15, Supabase, Claude API, n8n self-hosted, and Engram. Each tool has a reason for being here — and the ones that don't, aren't.

The stack I use to build SaaS with AI in 2026

A stack isn't a list of tools. It's an architecture decision.

Every time someone asks me "what technology do you use to build X?", the honest answer is: it depends on what for. But in 2026, after building Nexus CRM, JARVIS, and several client projects, I have a default stack for any modern SaaS with AI components.

I didn't choose it from a "top tools 2026" list. I built it by elimination: what gave me problems got removed, what worked stayed. Here it is with the real reasons behind each choice.


Frontend: Next.js 15 + React 19 + Tailwind 4

Why Next.js 15 and not Vue or Svelte

Vue is elegant. Svelte is fast. But the React ecosystem remains unbeatable for SaaS in 2026, and Next.js 15 has mature Server Components, a stable App Router, and the best Vercel support (which is also my deployment platform).

React 19 brought real performance improvements and async state management. With use() for promises and native Server Actions, the architecture pattern changed. You no longer need Redux for 90% of cases.

Tailwind 4 deserves a special mention: the new CSS-first engine is a paradigm shift. No more JavaScript config, the CSS file is the config, and tree-shaking is automatic. Build times were cut in half.

What I don't use on the frontend

I don't use Chakra UI, Material UI, or any heavy component library. For custom UI I prefer my own components built on Radix primitives. For animations, Framer Motion when I need something sophisticated, native CSS when I don't.


Backend: Supabase

Supabase is the backend of the stack and I'll be direct: it's the decision that has saved me the most time in the last 2 years.

With Supabase you get:

  • Managed PostgreSQL with automatic backups, replicas, and extensions (pgvector for embeddings, for example)
  • Complete auth: email, magic link, OAuth with Google/GitHub, JWTs, Row Level Security
  • Realtime: database change subscriptions via WebSockets, no extra configuration
  • Storage: S3-compatible, with access policies integrated with the auth system
  • Edge Functions: Deno-based for server logic that doesn't belong on the client

For Nexus CRM, Supabase handles multi-tenancy via Row Level Security: each company has its isolated schema and can't access other companies' data. Implementing this from scratch in another system would have taken weeks.

The pattern I use for multi-tenant

-- Basic RLS policy per organization
CREATE POLICY "org_isolation" ON contacts
  USING (org_id = auth.jwt() ->> 'org_id');

Simple, scalable, and Supabase handles it transparently on every query.


AI: Claude API (Anthropic)

Why not OpenAI

This is the question I get asked most. The short answer: Claude handles reasoning with long context better and is more consistent with structured outputs.

For a system like JARVIS where agents pass information between each other and need to maintain coherence across long conversations, that matters. GPT-4 has better benchmarks on specific coding tasks. Claude has better benchmarks on complex reasoning and multi-step instruction following.

Plus, Anthropic's prompt caching system is crucial for token economics: you can cache an agent's system prompt and only pay the difference per session. In a system with 11 agents that share a lot of base context, that reduces cost by up to 70%.

Model assignment by role

Task Model Reason
Architecture, complex decisions Claude Opus Maximum reasoning
Development, design, content Claude Sonnet Quality/cost balance
Mechanical tasks, documentation Claude Haiku Speed and minimal cost

The total cost of the system with 11 active agents is $80-150 USD/month. Less than an Adobe Creative Cloud subscription.


Automation: n8n self-hosted

n8n is the glue piece of the stack. It connects everything with everything: when something happens in Supabase, n8n can trigger a JARVIS agent, send a WhatsApp message, update Notion, send an email, and log in the CRM — all in the same workflow.

Why not Zapier or Make?

Three reasons:

  1. Cost: Zapier at that workflow volume would cost $400-800/month. n8n self-hosted on my Hetzner server costs $8/month in infrastructure.
  2. Control: When a workflow fails, I can debug the code. With Zapier you're hostage to their logging system.
  3. Customization: n8n allows custom JavaScript code in any node. For rare integrations or complex logic, that's invaluable.

I run it via Easypanel on a Hetzner VPS (CX21, €3.79/month). Stable for 14 months with no significant downtime.


Deploy: Vercel + Easypanel

The frontend of any Next.js project goes to Vercel. There's no alternative that comes close in terms of DX (Developer Experience): push to main, automatic deploy in 45 seconds, preview URLs for every PR, integrated analytics.

For services that don't go on Vercel (n8n, custom APIs, Engram, microservices), I use Easypanel on Hetzner. Easypanel is basically a Docker control panel that makes deploying a service as simple as pasting a repository URL.

Total monthly infrastructure cost for a SaaS in production with moderate traffic: ~$35-50 USD.


Memory: Engram

Engram is the most custom component of the stack. I wrote it in Go and it's a persistent memory system for AI agents. It allows agents to remember decisions, context, and learnings between sessions.

The problem it solves: by default, every conversation with an AI model starts from scratch. For a production agent system, that's a huge problem. Engram acts as the team's long-term memory.

Technically it's an HTTP server that exposes an observations (memories) API with semantic and keyword search. Agents can save and retrieve context using MCP (Model Context Protocol).


CI/CD and Management: Claude Code + GitHub

Claude Code as an IDE is the newest bet in the stack and I can no longer work without it. It's not just autocomplete: it's an agent that understands the full project context, can refactor multiple files, run commands, read errors and fix them.

The flow is simple: I work on a branch, Claude Code helps with development, when it's ready I create a PR on GitHub, Ghost (the security agent) reviews the code, and if it passes the automated CI, merge to main and Vercel deploys in minutes.


The complete stack in a table

Layer Tool Approx. Cost
Frontend Next.js 15 + Vercel $0-20/mo (free tier)
Database Supabase $0-25/mo
AI Claude API $80-150/mo
Automation n8n self-hosted ~$4/mo (infra)
Services Easypanel + Hetzner ~$8-15/mo
Repository GitHub $0-4/mo
Total ~$120-220/mo

For less than $220/month you get a production stack that competes with companies spending 10x more. That's the technical founder's advantage in 2026.


Want to implement this stack in your project?

If you're building a SaaS and want to implement this stack from the start (without learning from the mistakes I already made), I can help you.

From the initial setup to the complete architecture of an AI agent system integrated into your product. Message me on Instagram @MickaelDesigner or through the contact form at mickaelvasquez.tech.