Starter Kit

Supabase SaaS Boilerplate en Español — Auth + RLS + Stripe Billing + Next.js

**Para de reescribir auth y billing en cada proyecto.** --- ### Cada SaaS que arrancás empieza con las mismas semanas perdidas Auth. Roles. Row Level Security.

Para de reescribir auth y billing en cada proyecto.


Cada SaaS que arrancás empieza con las mismas semanas perdidas

Auth. Roles. Row Level Security. Stripe. Webhooks. Feature flags.

No es código de negocio — es infraestructura que reescribís de cero en cada proyecto, copiás de uno anterior y propagás los mismos bugs, o copiás de un tutorial que no maneja los edge cases reales.

Este boilerplate lo resuelve de una vez.


Qué incluye

Auth completa con Supabase

  • Email + contraseña, magic link y OAuth Google
  • Middleware que protege el dashboard y redirige a /login
  • Trigger automático que crea el perfil del usuario al registrarse

Row Level Security con tests incluidos

Este es el diferencial que no tiene ningún otro boilerplate del mercado.

RLS mal configurado es el bug de seguridad más silencioso en Supabase: no tira error, simplemente filtra mal. El boilerplate incluye tests SQL (pgTAP) que crean dos usuarios de prueba, insertan datos con uno, intentan leerlos con el otro y verifican que el resultado sea vacío.

Si los tests pasan, las políticas funcionan. Si no pasan, hay un bug — y lo sabés antes de llegar a producción.

npx supabase test db
# ✓ usuario A ve su propio perfil
# ✓ usuario B no puede ver perfil de usuario A
# ✓ usuario B no puede ver suscripción de usuario A
# ✓ SELECT sin filtro no devuelve datos de otros usuarios
# ✓ RLS activado en profiles y subscriptions

Billing con Stripe

  • Script que crea los productos Free y Pro en Stripe con un comando
  • Stripe Checkout para upgrades
  • Stripe Customer Portal para que el usuario gestione su suscripción
  • Webhook handler para 5 eventos críticos con verificación de firma obligatoria
  • hasFeature(userId, 'nombre') — una función, un lugar, todos los feature flags

Frontend en Next.js

  • Landing page con tabla de pricing
  • Dashboard con bloque de feature bloqueada de ejemplo
  • Página de billing con upgrade y portal
  • Página de settings con nombre y contraseña

Deploy en Coolify

  • docker-compose.yml listo para Coolify (solo la app Next.js — Supabase corre en Cloud)
  • Dockerfile con build multi-stage optimizado
  • Guía paso a paso en docs/deploy-coolify.md

Stack

Next.js 15 · Supabase (Auth + PostgreSQL + RLS) · Stripe · Tailwind CSS · TypeScript · Docker · Coolify


Lo que obtenés

├── README.md (documentación completa en español)
├── docker-compose.yml + Dockerfile
├── .env.example (con comentarios en cada variable)
├── src/
│   ├── middleware.ts
│   ├── app/ (landing, auth, dashboard, billing, settings, webhook)
│   └── lib/ (supabase, stripe, subscription)
├── supabase/
│   ├── migrations/001_initial.sql (tablas + RLS + trigger)
│   └── tests/rls_test.sql (6 tests pgTAP)
├── scripts/setup-stripe.ts
└── docs/ (deploy-coolify, stripe-setup, supabase-setup)

Preguntas frecuentes

¿Necesito saber Next.js avanzado para usarlo? Necesitás saber lo básico de Next.js App Router y TypeScript. El boilerplate usa patrones estándar — Server Components, Server Actions, Route Handlers. Si sabés hacer un CRUD con Next.js, lo entendés.

¿Puedo usarlo para proyectos de clientes? Sí. La licencia permite uso personal y comercial, incluyendo proyectos para clientes. Lo que no podés hacer es revender el boilerplate en sí.

¿Por qué Supabase Cloud y no self-hosted? Self-hosted Supabase requiere correr ~7 servicios Docker. Para la mayoría de micro-SaaS en etapa temprana, el tier gratuito de Supabase Cloud (500MB, 50k usuarios) es más que suficiente. Cuando el proyecto crezca, migrás con supabase db dump.

¿Qué diferencia hay con MakerKit o ShipFast? MakerKit cuesta $299, está en inglés y asume deploy en Vercel. ShipFast es similar. Este boilerplate cuesta $49, está completamente en español, despliega en Coolify y es el único que incluye tests de RLS.

¿Los tests de RLS funcionan sin configuración extra? Sí, con npx supabase test db sobre el entorno local de Supabase. Los 6 tests crean usuarios de prueba, verifican los accesos cruzados y hacen rollback automático.

También te puede interesar