<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>VerdantStack</title>
    <link>https://verdantstack.dev</link>
    <description>Production-grade developer starters for the parts of software products nobody demos: multi-tenancy, seat billing, role-based access, audit logging.</description>
    <language>en-us</language>
    <lastBuildDate>Wed, 23 Sep 2026 15:07:46 GMT</lastBuildDate>
    <atom:link href="https://verdantstack.dev/feed.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Make Your Codebase AI-Agent-Friendly</title>
      <link>https://verdantstack.dev/docs/make-codebase-ai-agent-friendly/</link>
      <guid isPermaLink="true">https://verdantstack.dev/docs/make-codebase-ai-agent-friendly/</guid>
      <description>AGENTS.md, llms.txt, and type-level API references — the context files AI coding agents (Claude Code, Cursor, Copilot) need to work productively in your codebase, and how to add them.</description>
      <pubDate>Tue, 01 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SvelteKit + Postgres Starter</title>
      <link>https://verdantstack.dev/products/sveltekit-postgres-starter/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/sveltekit-postgres-starter/</guid>
      <description>A production-grade SvelteKit + Postgres starter: organizations, invites, roles, seat billing, audit log. Drizzle ORM + postgres.js, opt-in RLS, no provider lock-in.</description>
      <pubDate>Mon, 31 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SvelteKit + Postgres Starter: Multi-Tenant DB Design</title>
      <link>https://verdantstack.dev/products/sveltekit-postgres-starter/docs/postgres-multi-tenant-drizzle-design/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/sveltekit-postgres-starter/docs/postgres-multi-tenant-drizzle-design/</guid>
      <description>Shared-database tenancy on Postgres with Drizzle ORM: org_id scoping, uuid PKs, bigint-ms timestamps, per-request isolation.</description>
      <pubDate>Mon, 31 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SvelteKit + Postgres Starter: RLS Defense-in-Depth</title>
      <link>https://verdantstack.dev/products/sveltekit-postgres-starter/docs/row-level-security-sveltekit-postgres/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/sveltekit-postgres-starter/docs/row-level-security-sveltekit-postgres/</guid>
      <description>Opt-in Row-Level Security for the Postgres starter: fail-closed FORCE RLS, the app.current_user_id GUC, and per-table policies.</description>
      <pubDate>Mon, 31 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SvelteKit + Postgres Starter: Connection Pooling</title>
      <link>https://verdantstack.dev/products/sveltekit-postgres-starter/docs/sveltekit-postgres-connection-pooling/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/sveltekit-postgres-starter/docs/sveltekit-postgres-connection-pooling/</guid>
      <description>postgres.js pool sizing (PG_MAX_CONNECTIONS, default 20), tuning, and when to add PgBouncer/Supavisor/Neon pooled connections.</description>
      <pubDate>Mon, 31 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SvelteKit + Postgres Starter: Drizzle Migrations</title>
      <link>https://verdantstack.dev/products/sveltekit-postgres-starter/docs/drizzle-postgres-migrations-sveltekit/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/sveltekit-postgres-starter/docs/drizzle-postgres-migrations-sveltekit/</guid>
      <description>Schema-first Postgres migrations with drizzle-kit: edit schema.ts, generate, review, apply at boot or via npm run db:migrate.</description>
      <pubDate>Mon, 31 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SvelteKit + Postgres Starter: Read Replicas</title>
      <link>https://verdantstack.dev/products/sveltekit-postgres-starter/docs/postgres-read-replica-routing-sveltekit/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/sveltekit-postgres-starter/docs/postgres-read-replica-routing-sveltekit/</guid>
      <description>Write/read splitting with Drizzle: separate read/write handles, lag-tolerant read classification, and REPLICA_DATABASE_URL wiring.</description>
      <pubDate>Mon, 31 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SvelteKit + Postgres Starter: Full-Text Search</title>
      <link>https://verdantstack.dev/products/sveltekit-postgres-starter/docs/postgres-full-text-search-sveltekit/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/sveltekit-postgres-starter/docs/postgres-full-text-search-sveltekit/</guid>
      <description>Native Postgres tsvector + GIN full-text search over the audit log — no external search service.</description>
      <pubDate>Mon, 31 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SvelteKit + Postgres Starter: JSONB Metadata</title>
      <link>https://verdantstack.dev/products/sveltekit-postgres-starter/docs/jsonb-metadata-saas-audit-logs/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/sveltekit-postgres-starter/docs/jsonb-metadata-saas-audit-logs/</guid>
      <description>Flexible audit-log metadata: the text-JSON default today, the jsonb upgrade path, and @&gt; containment queries with GIN indexes.</description>
      <pubDate>Mon, 31 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SvelteKit + Postgres Starter: Session Management</title>
      <link>https://verdantstack.dev/products/sveltekit-postgres-starter/docs/postgres-session-management-sveltekit/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/sveltekit-postgres-starter/docs/postgres-session-management-sveltekit/</guid>
      <description>Hashed, DB-backed, revocable sessions with Postgres — 32-byte token, sha256 at rest, 30-day expiry, revocation by row delete.</description>
      <pubDate>Mon, 31 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SvelteKit + Postgres vs SvelteKit + Supabase</title>
      <link>https://verdantstack.dev/comparison/sveltekit-postgres-vs-supabase/</link>
      <guid isPermaLink="true">https://verdantstack.dev/comparison/sveltekit-postgres-vs-supabase/</guid>
      <description>Provider-neutral Postgres with Drizzle vs managed Supabase for a multi-tenant SvelteKit SaaS — auth, RLS, pooling, realtime, storage, and lock-in.</description>
      <pubDate>Mon, 31 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SvelteKit + Postgres vs Next.js + Prisma</title>
      <link>https://verdantstack.dev/comparison/sveltekit-postgres-vs-nextjs-prisma/</link>
      <guid isPermaLink="true">https://verdantstack.dev/comparison/sveltekit-postgres-vs-nextjs-prisma/</guid>
      <description>Building a multi-tenant SaaS: SvelteKit server endpoints/form actions vs Next.js App Router, Drizzle vs Prisma, Postgres hosting.</description>
      <pubDate>Mon, 31 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Drizzle ORM vs Prisma for SvelteKit SaaS</title>
      <link>https://verdantstack.dev/comparison/drizzle-orm-vs-prisma-sveltekit/</link>
      <guid isPermaLink="true">https://verdantstack.dev/comparison/drizzle-orm-vs-prisma-sveltekit/</guid>
      <description>SQL-first Drizzle vs Prisma&apos;s schema DSL for a SvelteKit SaaS — query API, migrations, type safety, overhead, and ecosystem.</description>
      <pubDate>Mon, 31 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SvelteKit + Postgres Starter — Live Demo</title>
      <link>https://postgres-starter.verdantstack-site.pages.dev/</link>
      <guid isPermaLink="true">https://postgres-starter.verdantstack-site.pages.dev/</guid>
      <description>Live interactive demo of the SvelteKit + Postgres Starter on Cloudflare Pages + Supabase Postgres (transaction pooler): orgs, invites, roles, seat billing, RBAC, and an append-only audit log. Sign in with dana@northwind.example / Dana-demo-2026.</description>
      <pubDate>Mon, 31 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SvelteKit + Supabase Starter: Architecture</title>
      <link>https://verdantstack.dev/products/sveltekit-supabase-starter/docs/architecture/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/sveltekit-supabase-starter/docs/architecture/</guid>
      <description>Thin routes to framework-free services to rbac/billing seams to supabase/client.ts — service-role vs user-scoped clients and RLS defense-in-depth.</description>
      <pubDate>Sun, 30 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SvelteKit + Supabase Starter: RBAC &amp; RLS</title>
      <link>https://verdantstack.dev/products/sveltekit-supabase-starter/docs/rbac/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/sveltekit-supabase-starter/docs/rbac/</guid>
      <description>Three roles, one capability matrix, and a strict hierarchy enforced server-side at the app layer and again via Supabase Row Level Security.</description>
      <pubDate>Sun, 30 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SvelteKit + Supabase Starter: Seat Billing</title>
      <link>https://verdantstack.dev/products/sveltekit-supabase-starter/docs/billing/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/sveltekit-supabase-starter/docs/billing/</guid>
      <description>Pluggable BillingAdapter for merchant-of-record checkout, enforced at invite acceptance with seat-limit error codes.</description>
      <pubDate>Sun, 30 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SvelteKit + Supabase Starter: Testing</title>
      <link>https://verdantstack.dev/products/sveltekit-supabase-starter/docs/testing/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/sveltekit-supabase-starter/docs/testing/</guid>
      <description>Twelve Vitest suites (314 tests) against an in-memory fake Supabase client — no database, no network. RLS checks via supabase start.</description>
      <pubDate>Sun, 30 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SvelteKit + Supabase Starter: Versioning</title>
      <link>https://verdantstack.dev/products/sveltekit-supabase-starter/docs/versioning/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/sveltekit-supabase-starter/docs/versioning/</guid>
      <description>Semantic Versioning, Keep a Changelog, and the release process for the Supabase starter.</description>
      <pubDate>Sun, 30 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Multi-tenant SvelteKit Starter — Live Demo</title>
      <link>https://multi-tenant-starter.verdantstack-site.pages.dev/</link>
      <guid isPermaLink="true">https://multi-tenant-starter.verdantstack-site.pages.dev/</guid>
      <description>Live interactive demo of the Multi-tenant SvelteKit Starter running on Cloudflare Pages + D1: orgs, invites, roles, seat billing, and an append-only audit log. Sign in with dana@northwind.example / Dana-demo-2026.</description>
      <pubDate>Sun, 30 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SvelteKit + Supabase Starter — Live Demo</title>
      <link>https://supabase-starter.verdantstack-site.pages.dev/</link>
      <guid isPermaLink="true">https://supabase-starter.verdantstack-site.pages.dev/</guid>
      <description>Live interactive demo of the SvelteKit + Supabase Starter on Cloudflare Pages + Supabase Postgres with RLS: orgs, invites, roles, seat billing, and an append-only audit log. Sign in with dana@northwind.example / Dana-demo-2026.</description>
      <pubDate>Sun, 30 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SvelteKit + Supabase Starter</title>
      <link>https://verdantstack.dev/products/sveltekit-supabase-starter/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/sveltekit-supabase-starter/</guid>
      <description>A production-grade SvelteKit starter with Supabase: organizations, invites, roles, seat billing, audit log. PostgreSQL via Supabase with RLS defense-in-depth.</description>
      <pubDate>Sat, 29 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Drizzle ORM Migrations in SvelteKit</title>
      <link>https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/drizzle-orm-migrations-sveltekit/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/drizzle-orm-migrations-sveltekit/</guid>
      <description>Schema-first database management with Drizzle Kit: migrations, type-safe queries, and SQLite-specific considerations.</description>
      <pubDate>Sat, 29 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Multi-Tenant Database Design</title>
      <link>https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/multi-tenant-database-design/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/multi-tenant-database-design/</guid>
      <description>Shared-database tenant isolation patterns: tenant_id columns, membership scoping, and when to outgrow SQLite.</description>
      <pubDate>Sat, 29 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SvelteKit Session Management</title>
      <link>https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/sveltekit-session-management/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/sveltekit-session-management/</guid>
      <description>Server-side sessions with hashed tokens, httpOnly cookies, and database-backed revocation.</description>
      <pubDate>Sat, 29 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SvelteKit Hooks &amp; Middleware</title>
      <link>https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/sveltekit-hooks-middleware/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/sveltekit-hooks-middleware/</guid>
      <description>Server-side request handling with hooks.server.ts: auth, sessions, and multi-tenant resolution.</description>
      <pubDate>Sat, 29 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Testing SvelteKit with Vitest</title>
      <link>https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/sveltekit-testing-vitest/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/sveltekit-testing-vitest/</guid>
      <description>Unit tests, integration tests, and HTTP-level patterns from a 298-test suite covering auth, RBAC, invites, and rate limiting.</description>
      <pubDate>Sat, 29 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SQLite for Production SaaS</title>
      <link>https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/sqlite-production-saas/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/sqlite-production-saas/</guid>
      <description>When and how to use SQLite for multi-tenant applications: WAL mode, isolation, and ceiling awareness.</description>
      <pubDate>Sat, 29 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SvelteKit Environment Variables</title>
      <link>https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/sveltekit-environment-variables/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/sveltekit-environment-variables/</guid>
      <description>Public vs private, static vs dynamic, .env files, Cloudflare Workers secrets, and startup validation.</description>
      <pubDate>Sat, 29 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SvelteKit Error Handling</title>
      <link>https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/sveltekit-error-handling/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/sveltekit-error-handling/</guid>
      <description>fail(), error(), redirect(), and the errorToFail mapper: typed error patterns for form actions.</description>
      <pubDate>Sat, 29 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SvelteKit vs Next.js for SaaS in 2026</title>
      <link>https://verdantstack.dev/comparison/sveltekit-vs-nextjs-saas/</link>
      <guid isPermaLink="true">https://verdantstack.dev/comparison/sveltekit-vs-nextjs-saas/</guid>
      <description>Honest comparison of SvelteKit and Next.js for building SaaS: performance, pricing, developer experience, and when to choose each.</description>
      <pubDate>Fri, 28 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>VerdantStack vs CMSaasStarter — SvelteKit Starter Comparison</title>
      <link>https://verdantstack.dev/comparison/sveltekit-starter-vs-cmsaasstarter/</link>
      <guid isPermaLink="true">https://verdantstack.dev/comparison/sveltekit-starter-vs-cmsaasstarter/</guid>
      <description>Feature-by-feature comparison of VerdantStack Multi-tenant SvelteKit Starter vs CMSaasStarter (2,362★ Supabase starter).</description>
      <pubDate>Fri, 28 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Multi-Tenant Starter Kit Checklist</title>
      <link>https://verdantstack.dev/comparison/multi-tenant-starter-checklist/</link>
      <guid isPermaLink="true">https://verdantstack.dev/comparison/multi-tenant-starter-checklist/</guid>
      <description>The 5 essential features every multi-tenant starter kit must have: organization isolation, RBAC, invitations, billing, and audit logging.</description>
      <pubDate>Fri, 28 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Best SvelteKit SaaS Starters in 2026</title>
      <link>https://verdantstack.dev/bestof/sveltekit-saas-starters-2026/</link>
      <guid isPermaLink="true">https://verdantstack.dev/bestof/sveltekit-saas-starters-2026/</guid>
      <description>Compare the top SvelteKit starter kits for building multi-tenant B2B SaaS applications.</description>
      <pubDate>Fri, 28 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>How to Build Multi-Tenant SaaS with SvelteKit</title>
      <link>https://verdantstack.dev/docs/how-to-build-multi-tenant-saas-sveltekit/</link>
      <guid isPermaLink="true">https://verdantstack.dev/docs/how-to-build-multi-tenant-saas-sveltekit/</guid>
      <description>Step-by-step guide to building a production-ready multi-tenant SaaS application with SvelteKit, auth, RBAC, and billing.</description>
      <pubDate>Fri, 28 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SvelteKit SaaS Boilerplate — What You Actually Need</title>
      <link>https://verdantstack.dev/docs/sveltekit-saas-boilerplate/</link>
      <guid isPermaLink="true">https://verdantstack.dev/docs/sveltekit-saas-boilerplate/</guid>
      <description>Compare free SvelteKit starters vs production-ready kits with RBAC, billing, and audit logging.</description>
      <pubDate>Fri, 28 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Multi-Tenant SvelteKit Template — Build B2B SaaS with Organizations &amp; RBAC</title>
      <link>https://verdantstack.dev/docs/multi-tenant-sveltekit-template/</link>
      <guid isPermaLink="true">https://verdantstack.dev/docs/multi-tenant-sveltekit-template/</guid>
      <description>How to implement organizations, role-based access control, seat billing, and audit logging in your SvelteKit B2B SaaS.</description>
      <pubDate>Fri, 28 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Documentation — VerdantStack</title>
      <link>https://verdantstack.dev/docs/</link>
      <guid isPermaLink="true">https://verdantstack.dev/docs/</guid>
      <description>Guides, comparisons, and resources for building multi-tenant SaaS applications with SvelteKit.</description>
      <pubDate>Fri, 28 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>VerdantStack — Production-grade developer starters</title>
      <link>https://verdantstack.dev/</link>
      <guid isPermaLink="true">https://verdantstack.dev/</guid>
      <description>Starters and kits for the work that doesn&apos;t make screenshots: multi-tenancy, seat billing, role-based access, audit logging.</description>
      <pubDate>Thu, 27 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Multi-tenant SvelteKit Starter</title>
      <link>https://verdantstack.dev/products/multi-tenant-sveltekit-starter/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/multi-tenant-sveltekit-starter/</guid>
      <description>A production-grade multi-tenant SvelteKit starter: organizations, invitations, role-based access, seat-based billing via a merchant of record, and an append-only audit log.</description>
      <pubDate>Thu, 27 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Products — all VerdantStack starters</title>
      <link>https://verdantstack.dev/products/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/</guid>
      <description>Every VerdantStack starter kit: the Multi-tenant SvelteKit Starter (SQLite) and the SvelteKit + Supabase Starter (Postgres).</description>
      <pubDate>Thu, 27 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>End User License Agreement</title>
      <link>https://verdantstack.dev/docs/license/</link>
      <guid isPermaLink="true">https://verdantstack.dev/docs/license/</guid>
      <description>End User License Agreement for the multi-tenant SvelteKit starter: single-seat, unlimited projects, lifetime updates + lifetime standard support, 30-day refund.</description>
      <pubDate>Thu, 27 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Multi-tenancy in SvelteKit, at the application layer</title>
      <link>https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/sveltekit-multi-tenant-auth/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/sveltekit-multi-tenant-auth/</guid>
      <description>How to model organizations, memberships, invites, and role enforcement in SvelteKit without database RLS — patterns that survive contact with production.</description>
      <pubDate>Thu, 27 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>RBAC: Role-Based Access Control</title>
      <link>https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/sveltekit-rbac-role-hierarchy/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/sveltekit-rbac-role-hierarchy/</guid>
      <description>Three roles with strict hierarchy enforced server-side. The capability matrix, hierarchy rules, and enforcement points.</description>
      <pubDate>Thu, 27 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Invite Link Flow</title>
      <link>https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/sveltekit-invite-link-flow/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/sveltekit-invite-link-flow/</guid>
      <description>Single-use hashed invite tokens with expiry and atomic claim. Race-condition-safe by construction.</description>
      <pubDate>Thu, 27 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Seat Billing Adapter Pattern</title>
      <link>https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/seat-billing-adapter-pattern/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/seat-billing-adapter-pattern/</guid>
      <description>Pluggable BillingAdapter interface for merchant-of-record checkout. Works from countries where Stripe isn&apos;t available.</description>
      <pubDate>Thu, 27 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Append-Only Audit Log</title>
      <link>https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/append-only-audit-log-design/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/append-only-audit-log-design/</guid>
      <description>Audit trail design: append-only by construction, no update or delete path. Enterprise-ready from day one.</description>
      <pubDate>Thu, 27 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Hashed Session Auth</title>
      <link>https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/sveltekit-hashed-session-auth/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/sveltekit-hashed-session-auth/</guid>
      <description>Database-backed sessions with hashed tokens for revocation. Leaked sessions yield zero usable logins.</description>
      <pubDate>Thu, 27 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Rate Limiting Login</title>
      <link>https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/sveltekit-rate-limiting-login/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/sveltekit-rate-limiting-login/</guid>
      <description>Sliding-window failed-attempt rate limiter with pre-hash blocking. Blocks floods before any scrypt work.</description>
      <pubDate>Thu, 27 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SaaS Starter Evaluation Checklist</title>
      <link>https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/saas-starter-evaluation-checklist/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/saas-starter-evaluation-checklist/</guid>
      <description>Six-dimension evaluation framework for choosing a SaaS starter. Includes a 5-minute audit procedure.</description>
      <pubDate>Thu, 27 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Sell Software Without Stripe</title>
      <link>https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/sell-software-without-stripe-access/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/sell-software-without-stripe-access/</guid>
      <description>Merchant-of-record options for developers in countries where Stripe isn&apos;t available. Lemon Squeezy, Paddle, Payhip compared.</description>
      <pubDate>Thu, 27 Aug 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Multi-Tenant Starter Checklist</title>
      <link>https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/multi-tenant-starter-checklist/</link>
      <guid isPermaLink="true">https://verdantstack.dev/products/multi-tenant-sveltekit-starter/docs/multi-tenant-starter-checklist/</guid>
      <description>Production readiness checklist for multi-tenant SaaS starters covering tenancy, auth, billing, audit, testing, and deployment.</description>
      <pubDate>Thu, 27 Aug 2026 00:00:00 GMT</pubDate>
    </item>
  </channel>
</rss>