Skip to main content
Tech stack

The Boilerlykit stack, in plain English

Next.js 16, React 19, Tailwind v4, Supabase, Stripe, Polar, Directus 11, next-intl, MDX, TypeScript 5.9. Below is what each piece does, why we picked it, and what it replaces.

Every technology we ship, and why

Six pillars covering frontend, data, billing, content, i18n, and developer experience. Scroll or jump to the pillar that matters to your decision.

Next.js 16 App Router, React 19, Tailwind v4

The frontend core. Next.js 16 App Router with React 19 Server Components handles the render, Tailwind v4 gives us oklch color tokens and a modern design system, and shadcn/ui + Radix provide the accessible primitives. We run this combination on SaaSForge Starter, AI, and Core. SaaSForge Agency is still on Tailwind v3 and TypeScript 5.5 because the Directus integration warrants a more cautious migration - we are shipping that upgrade later in 2026.

Explore Next.js 16 posts

Included in this template

  • Next.js 16 App Router with stable Server Components
  • React 19 with automatic batching and use() for async data
  • Tailwind v4 with oklch color tokens (perceptually uniform color)
  • shadcn/ui + Radix primitives - accessible by default
  • Lucide icons as a tree-shaken icon system
  • next-themes for system / light / dark mode

Supabase: Auth, Postgres RLS, pgvector

One data layer, three jobs. Supabase Auth handles email + OAuth + (on Core) 2FA and SAML SSO hooks. Postgres with Row Level Security enforces tenancy at the SQL layer - the right place, not the application layer. pgvector (on AI) powers RAG retrieval without introducing a separate vector database. Read our deep dive on how this fits together in practice.

Read Supabase Auth + RLS guide

Included in this template

  • Supabase Auth: email magic link, OAuth providers, TOTP 2FA on Core
  • SAML SSO hooks for Okta, Azure AD, Google Workspace (Core)
  • Postgres with Row Level Security enforcing workspace boundaries
  • SQL migrations committed to the repo - reproducible environments
  • pgvector extension wired on AI for embeddings + cosine search
  • Typed Supabase client with server-only and browser boundaries

Stripe subscriptions and Polar as Merchant of Record

Billing is the part most boilerplates lie about. We wire Stripe subscriptions with customer portal, webhook lifecycle, idempotency, and the failure paths you actually hit. Polar is the Merchant of Record for our own checkout - it handles EU VAT, invoices, and refunds on purchases of our templates, so you get a compliant receipt instead of a tax-season scramble. Your customers' billing (inside the apps you build) is still raw Stripe.

See SaaSForge Core billing

Included in this template

  • Stripe Checkout + Customer Portal, self-serve plan changes
  • Webhook lifecycle with idempotency keys and replay handling
  • SaaSForge AI: token-metered credits with monthly reset patterns
  • SaaSForge Core: seat-based team billing with tier enforcement
  • Polar MoR checkout on Boilerlykit storefront (EU VAT handled)
  • Inbound + outbound webhooks for partner integrations (Core)

Directus 11 CMS and MDX content

Two content models for two use cases. SaaSForge Agency ships Directus 11 self-hosted (Postgres + Redis + Docker Compose) so your marketing team edits services, case studies, blog posts, and landing copy in an admin UI. The other three templates ship MDX content in the repo for blogs and docs, where git history, PR review, and versioning matter more than editorial workflow.

See Directus setup

Included in this template

  • Directus 11 self-hosted on Postgres 16 + Redis 7 (Agency)
  • Typed Directus SDK with server / client boundaries
  • Graceful CMS fallback content when collections are empty
  • MDX blog + MDX docs on Starter, AI, Core (next-mdx-remote)
  • Frontmatter-driven titles, descriptions, categories, read-time
  • BlogPosting + TechArticle JSON-LD generated from MDX metadata

next-intl internationalization

SaaSForge Agency ships EN / FR / ES via next-intl - translated UI strings, locale-aware routing (`/fr/...`, `/es/...`), locale-aware metadata, sitemap, and structured data. All three locales ship LTR; we do not currently ship RTL because getting RTL right takes dedicated effort we have not invested yet. The other three templates are EN-only today; the translation scaffolding is there for you to expand.

Read the Agency i18n docs

Included in this template

  • next-intl middleware with locale-prefixed URLs
  • EN / FR / ES message catalogs on Agency
  • Locale-aware titles, descriptions, canonicals, hreflang alternates
  • CMS translations per language via Directus translations tables
  • Locale-aware sitemap.xml and robots.txt
  • Structured data (Organization, FAQPage) localized

TypeScript strict, Vitest + Playwright, Vercel deploy

Developer experience is a product feature. Every template is TypeScript strict (5.9 on Starter / AI / Core, 5.5 on Agency pending upgrade). SaaSForge Core ships Vitest unit tests + Playwright e2e tests on the billing and auth paths - the parts that bite in production. Deployment targets Vercel by default, with documented escape hatches for Docker and Cloudflare.

Read the Vercel deploy guide

Included in this template

  • TypeScript 5.9 strict mode across Starter, AI, Core
  • Vitest unit tests + Playwright e2e tests (Core)
  • next/font with Montserrat / Merriweather / Source Code Pro
  • Edge-runtime Open Graph images via next/og
  • Vercel-ready with documented env groups and webhook URLs
  • Docker + Cloudflare escape hatches for teams not on Vercel
The toolkit

Works with your stack

Tweak models, retrieval, or pricing in config instead of rewriting the app. AI, Core, and Agency all sit on Next.js 16 and TypeScript each repo just emphasizes a different slice of the same modern toolkit.

01Models

Multi-model

SaaSForge AI ships with OpenAI and Anthropic. Map usage tiers to your catalog prices and env-driven limits instead of scattering magic numbers through the UI.

02Retrieval

RAG + pgvector

Chunk uploads, store embeddings, and search in Postgres. Core leans on the same database discipline for tenant data.

03Billing

Credits + subscriptions

AI handles credits and renewals through webhooks; Core handles subscriptions and the customer portal. Retries stay safe.

04Auth

Sessions with RLS

Core and AI use Supabase with SSR-friendly sessions and row-level security, so workspace rows never leak across accounts.

05Deploy

Railway or Vercel

Ships cleanly to Railway or Vercel with sane env notes. The AI template includes cron-friendly routes for things like credit resets.

06Fallback

Provider redundancy

Offer a premium model and keep a fallback path ready when an API is slow or returns errors, so users never see a hard outage.

07CMS

Directus + editorial SEO

Agency uses Directus 11 so editors change services and case studies in the CMS while the Next app stays deployable.

08Foundation

App Router + typed UI

TypeScript, Tailwind, and shadcn/Radix across the catalog. Fork, retheme, and keep every component predictable.

Need setup steps for models, billing, auth, or the CMS?Open the documentation hub

Stack questions buyers ask before checkout

If your question is not here, the full FAQ page covers licensing, payments, support, and customization.

Technical due diligence

Like the stack? See it running.

Each template's product page has live screenshots, documentation index, and the complete feature list. Pick the one that matches your product shape and clone the repo.