Notes from the boilerplate.
Architecture decisions, release notes, and the tradeoffs behind a boilerplate that does not get in your way.
Is it worth buying a SaaS boilerplate in 2026?
The honest buy-vs-build answer for SaaS boilerplates — what you're actually paying for, the cases where a kit pays for itself, and the cases where you should walk away and build it yourself.
Cobrar en pesos: por qué Stripe no alcanza en Argentina y cómo encararlo
Si buscaste pasarelas de pago Argentina 2026, ya viste que Stripe no aparece en esas comparativas. Por qué no es un riel local, qué te queda para cobrar en pesos, y cómo useDeploy trae MercadoPago nativo detrás de un puerto tipado.
How to secure a vibe-coded app: the 3 bugs a blank repo always ships
A coding agent starting from an empty folder reproduces the same three security bugs every time — un-revocable sessions, payment webhooks that charge twice, and queries that return another tenant's rows. Why it happens, and how a tested base closes all three.
AGENTS.md and CLAUDE.md are table stakes — enforcement is the moat
Every serious SaaS boilerplate now ships an AGENTS.md or a CLAUDE.md — a soft file the agent can quietly ignore by prompt 50. The differentiator is enforcement: ESLint-checked DDD boundaries and typed contracts that turn the build red when the agent crosses a line.
MercadoPago webhooks done right: signature verification, idempotency, and the truth-lands-later problem
A walkthrough of UseDeploy's real MercadoPago adapter — HMAC signature verification with a timing-safe compare, verify-then-fetch webhooks, and idempotent read-model writes that survive at-least-once redelivery and the MercadoPago Checkout Pro sandbox.
Guardrails your agent can't write for itself: compiler-enforced DDD boundaries
Clean architecture survives contact with AI agents only when the boundaries are compiled in. Here are the exact ESLint rules UseDeploy uses to make DDD layering and cross-context walls something a coding agent can't cross by accident.
One billing port, three providers: Stripe, MercadoPago and Polar
How UseDeploy puts Stripe, MercadoPago and Polar behind a single typed IPaymentProvider interface — so charging in pesos or dollars is a one-file swap, and the rest of the app never sees a provider SDK.
Why AI coding agents keep breaking things that already worked
AI generated code technical debt has a shape — agents drift toward their own defaults and quietly break code that already shipped. Why it happens, and what actually holds the line.
The last 20%: where vibe-coded SaaS apps break and leak
To make a vibe-coded app production-ready you have to survive the invisible 80% — auth that forgets, tenant data that leaks, billing that double-charges. Here's where it breaks, with real incidents, and what "done" actually requires.
ShipFast alternatives with multi-tenancy, RBAC and tests
An honest map of the ShipFast alternatives worth evaluating — free and paid — and a close look at the three capabilities people actually leave for: org-scoped multi-tenancy, real RBAC, and a test suite gated in CI.
Signed, retryable outgoing webhooks: HMAC, an outbox, and BullMQ
How UseDeploy delivers outgoing webhooks your customers can actually trust — Stripe-style HMAC signatures, a durable transactional outbox for the fanout, and BullMQ for per-delivery retries.
Multi-tenancy in Prisma without RLS: a tenant guard that fails loud
How UseDeploy stops cross-tenant data leaks with an org-scoped Prisma query extension that throws when a query forgets its organizationId — no Postgres RLS required.
From a Lovable/Bolt mockup to a real backend: what has to be true before you charge
The prototype-to-production gap, concretely. The invisible 80% a Lovable or Bolt mockup skips — idempotent billing, revocable sessions, tenant isolation, server-side secrets — and the exact code that closes it before you take money.
Reusing one multi-tenant base across every client without rebuilding it
How a multi-tenant SaaS boilerplate turns the org/membership/role model into something you build once and ship to every client — system roles, per-org permissions, and the invariants a fresh rebuild always forgets.
DX is a feature: how we decide what ships
Our internal heuristic for choosing libraries, abstractions, and patterns — biased toward what an LLM agent can navigate without help.
A 5-minute tour of the UseDeploy boilerplate
From `bun install` to a logged-in dashboard with a paid subscription, in five minutes flat.
Hello, world: introducing the UseDeploy blog
A new home for engineering notes, release announcements, and DX deep dives from the UseDeploy team.