Del prototipo a producción

Shippeaste el mockup con IA.
Ahora shippeá lo real — sobre una base que no filtra.

Tu agente te llevó al 80% a una velocidad que se sintió casi injusta. El último 20% — auth real, pagos, seguridad, multi-tenant — es donde las apps vibe-coded se rompen y filtran. Acá ya está construido y blindado.

El último 20% es donde el demo se vuelve un pasivo

"That last 20% — the part that makes your SaaS actually ready for paying customers — takes 80% of the effort, and that last 20% is where vibe coding starts to struggle." (Infinity Sky AI) El demo que ves es una porción chica de una app real. El 80% invisible — manejo de errores, seguridad, idempotencia, mantener a un usuario afuera de los datos de otro — es exactamente de lo que depende un cliente que paga, y exactamente lo que un agente shippea inseguro por default.

El acantilado técnico, en historias reales

Una key de Stripe en el frontend

"user list was leaked on the FE... the hacker got a hold of his Stripe key and issued every customer a refund. Now he's hiring a developer to shore it up." — Hacker News (item 44739556)

170 apps filtrando por una sola falla

Un escaneo halló 170+ apps vibe-coded con bases de datos totalmente expuestas y API keys hardcodeadas visibles en el bundle del navegador. El builder no técnico nunca supo que existía el row-level security. (reporte de seguridad de vibe-eval.com, feb 2026)

La parte que nadie prompteó

"AI does what you ask. It just never thinks about what you didn't ask." — web developer, r/VibeCodeDevs (161 upvotes)

Las partes aburridas y peligrosas — ya resueltas y blindadas

Auth

Login real con 2FA, magic-link, OAuth, verificación de email y password reset, vía BetterAuth. Reseteás la contraseña y las sesiones viejas dejan de funcionar.

Pagos

Stripe, MercadoPago o Polar — checkout, customer portal, cambios de plan, pagos fallidos y webhooks firmados que no cobran dos veces.

Seguridad y aislamiento

Los secrets viven en el server, nunca en el bundle del navegador. Un tenant-isolation guard se asegura de que un cliente jamás pueda leer los datos de otro.

Roles que significan algo

"admin" y "member" se chequean en el server, no solo se esconden en la UI — así una request modificada no puede auto-promoverse.

Apuntá tu agente acá, no a una carpeta vacía

Una carpeta vacía obliga a tu agente a inventar la arquitectura — y desde cero repite los mismos tres bugs de seguridad cada vez: sesiones que sobreviven un password reset, webhooks que cobran dos veces, y datos que se filtran entre usuarios. Arrancar desde una base con paredes que no puede cruzar significa que gasta su esfuerzo en tu idea, no en re-derivar auth y billing y hacerlos sutilmente mal.

No un reemplazo de tu builder — el lugar al que te graduás

Seguí bocetando ideas en Lovable, Bolt o v0 — son geniales para eso. Acá es a donde te mudás en el momento en que tenés usuarios reales, pagos reales y auth que gatea los datos de otras personas. Seguís corriendo un repo y tu agente; solo lo apuntás a una base que ya resolvió las partes aburridas y peligrosas.

Lo que tenés el día uno

Un dashboard funcionando

UI de cuenta, settings y las superficies que un usuario logueado espera — ya construidas.

Organizaciones y admin

Equipos, invitaciones de miembros, un panel de admin y roles — la columna multi-tenant.

Un portal de billing

Los clientes manejan su propia suscripción — upgrade, downgrade, cancelar — sin escribirte un email.

Email y jobs

Email transaccional y background jobs cableados y listos para mandar y correr.

Deploy de un comando

Shippeá a Docker o Railway con defaults opinados — sin título de DevOps.

Docs en 3 idiomas

Guías de setup paso a paso en inglés, español y portugués.

Respuestas derechas antes de comprometerte

No soy dev senior. ¿Puedo correr esto de verdad?+
Si podés clonar un repo, setear env vars y correr un comando, podés correr esto. Trae defaults opinados, deploy de un comando a Docker/Railway y docs paso a paso en tres idiomas. Es más setup que Lovable, y muchísimo menos que construir auth y pagos vos mismo.
¿Voy a tener que reconstruirlo más adelante?+
Ese es todo el punto de la arquitectura. Está layered, tipada de punta a punta y testeada en CI — la base que escala a medida que sumás usuarios, no un starter descartable que outgrows en tres meses.
¿Mi app vibe-coded es insegura solo por mala suerte?+
No — es insegura por default. Los agentes reproducen las mismas categorías de bug (keys expuestas, webhooks no idempotentes, leaks de datos entre tenants) porque promedian código público. Acá esas categorías están cerradas antes de que tu agente escriba una línea.
¿Y si ya tengo usuarios en mi prototipo?+
Entonces es exactamente el momento de mudarte. Reconstruí lo real acá y migrá — antes de que una key expuesta o una lista de usuarios filtrada te fuerce la decisión.

Shippeá lo real, no solo el mockup.

La seguridad que tu IA no escribió — ya construida, testeada en CI, y la base que no vas a tener que reconstruir.