Cómo Construimos DiziLatino con InsForge
De cero a plataforma de aprendizaje en una semana usando InsForge como backend.
El Desafío
DiziLatino nació de una necesidad real: los fans de series turcas en Latinoamérica querían entender los diálogos sin subtítulos. Pero construir una plataforma de aprendizaje de idiomas requiere:
- Autenticación segura (login, registro, OAuth)
- Base de datos para lecciones, progreso y quizzes
- Storage para videos y imágenes
- Funciones serverless para lógica de negocio
- Real-time para actualizaciones en vivo
¿Por Qué InsForge?
InsForge es una plataforma open-source basada en Postgres que ofrece todo lo que necesitábamos en un solo lugar:
1. Auth Integrado
Configuramos autenticación con email/password y OAuth (Google, GitHub) en minutos. Sin necesidad de Auth0, Clerk o Firebase Auth separados.
import { createClient } from '@insforge/sdk'
const client = createClient({
baseUrl: process.env.NEXT_PUBLIC_INSFORGE_URL,
anonKey: process.env.NEXT_PUBLIC_INSFORGE_ANON_KEY
})
// Login
await client.auth.signInWithPassword({
email: 'user@example.com',
password: 'password123'
})2. Database con RLS
Row Level Security (RLS) nos permite que cada usuario solo vea su propio progreso. Sin escribir middleware personalizado:
// Cada usuario solo ve sus propias lecciones completadas
const { data } = await client.database
.from('user_progress')
.select('*')
.eq('user_id', user.id)3. Storage para Videos
Subimos thumbnails y assets directamente a InsForge Storage. URLs firmadas para contenido protegido:
const { data } = await client.storage
.from('public-assets')
.upload('thumbnails/kara-sevda.jpg', file)4. Edge Functions
Lógica de negocio serverless para generar quizzes, calcular progreso y enviar emails transaccionales.
Arquitectura Final
┌─────────────────────────────────────────┐
│ Next.js 14 │
│ (App Router + SSR) │
├─────────────────────────────────────────┤
│ @insforge/sdk │
├─────────────────────────────────────────┤
│ InsForge │
│ ┌──────┐ ┌──────┐ ┌──────┐ ┌──────┐ │
│ │ Auth │ │ DB │ │Storage│ │ Func │ │
│ └──────┘ └──────┘ └──────┘ └──────┘ │
│ (PostgreSQL) │
└─────────────────────────────────────────┘Resultados
- Tiempo de desarrollo: 1 semana (vs 4-6 semanas con stack tradicional)
- Costo: $0 en tier gratuito de InsForge
- Escalabilidad: Auto-scaling manejado por InsForge
- Seguridad: RLS + JWT out of the box
Stack Completo
| Capa | Tecnología |
|---|---|
| Frontend | Next.js 14 + Tailwind CSS |
| Backend | InsForge (PostgreSQL + Auth + Storage) |
| Deploy | Vercel |
| Video | HyperFrames (HTML compositions) |
| Analytics | Vercel Speed Insights |
Conclusión
InsForge nos permitió enfocarnos en el contenido (lecciones de turco con series) en lugar de la infraestructura. Para cualquier proyecto que necesite auth + database + storage, InsForge es la opción más rápida y económica.
¿Quieres probar InsForge?
Visita insforge.dev para empezar tu propio proyecto.
Código abierto: github.com/insforge
