Twick - Simulador de audiencia

#IA #SSE #Auth #Backend #Fullstack
Captura de pantalla de Twick - Chat Simulation Stream
Captura de pantalla de Twick - Chat Simulation Stream

Un chat con IA para practicar streaming antes de salir en vivo.

Twick es una plataforma fullstack que estoy desarrollando desde cero. La idea es simple: configurar un chat simulado con IA para que streamers principiantes puedan practicar cómo responder, improvisar y mantener una conversación mientras juegan.

Empecé a construirlo porque me di cuenta de que hacer streaming en vivo no es tan fácil como solo prender cámara y jugar. Como los videojuegos son una fuente grande de inspiración para mí, Twick se volvió una forma de explorar ese mundo con una herramienta propia y, al mismo tiempo, entender el compromiso de atender a una audiencia.

El proyecto genera mensajes contextuales según el videojuego seleccionado y los envía en tiempo real para simular una audiencia activa. Se puede probar iniciando sesión con Google, Twitch o GitHub gracias a la autenticación con Clerk.

Tecnologías y decisiones

  1. Server-Sent Events (SSE): Implementé streaming en tiempo real con ReadableStream y TextEncoder para enviar mensajes al cliente cada pocos segundos sin depender de polling constante.

  2. Patrón Strategy + failover: Diseñé una capa para alternar entre proveedores de IA como Groq y Cerebras sin cambiar el código que consume los mensajes. Si uno falla, el sistema puede intentar con el siguiente.

  3. Clerk Authentication: Integré autenticación con tema oscuro y español, además de middleware para proteger rutas y una CSP dinámica para desarrollo y producción.

  4. Caché en memoria: Añadí caché con Map para reutilizar frases por juego y reducir llamadas innecesarias a los proveedores de IA.

Qué construí

  • Construí el streaming de mensajes con SSE y añadí cleanup con AbortSignal cuando el cliente cierra la conexión.
  • Organicé la conexión con los proveedores de IA para no crear clientes innecesarios y detectar rápido si faltaba alguna API key.
  • Ajusté la seguridad de la app para que Clerk y los recursos externos funcionaran bien tanto en desarrollo como en producción.
  • Twick me está ayudando a practicar producto completo: backend, autenticación, UX, IA y una necesidad personal convertida en herramienta.