Saltar al contenido

← Volver a proyectos

Engagement

SocialSphereMX

Período: mar 2024 —

In production

El reto

Creadores y agencias pequeñas en México estaban pegando con cinta tres o cuatro herramientas SaaS para publicar, medir y monetizar — y cada herramienta tomaba su parte del margen más su propio silo de datos. El cliente pagaba por la integración, no por el valor.

Mi rol

Diseñé y entregué el backend, el módulo de directorio y perfiles, el dashboard de agencia con auth por magic-link, el diseñador de redes sociales, el marketplace y el módulo de analytics — junto al sustrato VPS que sostiene todo el stack.

Lo que hice

  1. 01

    Sustrato VPS primero, módulos SaaS después

    Por qué: El sustrato es lo que evita que un creador pierda sus datos cuando una herramienta SaaS cambia sus términos. Construir módulos sobre el sustrato significa que cada módulo puede intercambiarse sin reconstruir la base.

    Trade-off: Más trabajo de sustrato por adelantado que lanzar módulos el día uno. El sustrato se paga solo la primera vez que hay que reemplazar un módulo.

  2. 02

    Auth por magic-link sobre flujos de reset de contraseña

    Por qué: Las contraseñas son una superficie hostil para creadores que usan la plataforma unas pocas veces al mes. Los magic links recortan la superficie de auth a un canal confiable y eliminan la clase de ataques del flujo de reset.

    Trade-off: Los magic links dependen de la entregabilidad de email, así que la plataforma necesita un camino de correo endurecido. Corremos nuestra propia instancia Stalwart para sacar la dependencia de la capa SaaS de terceros.

  3. 03

    Cadena de evidencia por módulo

    Por qué: El README de cada módulo apunta a una superficie de verificación — un advisory público, un gist publicado o un export de telemetría del VPS. Un revisor puede verificar la afirmación sin tener que tomar la palabra del operador.

    Trade-off: Cada módulo necesita un artefacto que valga la pena enlazar. La restricción fuerza a los módulos a entregarse con evidencia en lugar de solo entregarse.

Lo que cambió

  • Módulos en producción

    Antes: 0

    Después: 15 (blog CMS, dashboard de agencia, directorio, analytics, dominios custom, tienda, pagos, page builder, foro, agentes IA, diseñador social, editor de medios, CRM, academia, llamadas)

  • Superficie de ataque de auth

    Antes: Contraseñas + flujos de reset

    Después: Solo magic-link, sin DB de contraseñas

  • Dependencias SaaS de terceros para el sustrato

    Antes: Varía por creador

    Después: Una (email), Stalwart auto-hospedado

Trade-offs

El producto corre sobre un sustrato VPS endurecido en lugar de una plataforma serverless. El costo es operacional; la ganancia es que el creador es dueño del sustrato y puede migrar módulos sin perder su audiencia.

Lo que aprendí

Para productos de engagement el sustrato ES el producto. El cliente está pagando por control sobre sus datos, no por una UI pulida encima de la plataforma serverless de otro.

Stack

  • Next.js 16
  • Prisma
  • SQLite
  • TypeScript
  • Tailwind
  • Better SQLite3
  • ioredis

Repositorio

https://github.com/louzt/socialspheremx

Evidencia

← Volver a proyectos · curated 2026-09-20