El punto de quiebre

Llevaba casi una década en Twitter (ahora X). Antes era útil — un feed curado de las personas que seguía, en orden cronológico. Lo abría diez minutos, me ponía al día y lo cerraba.

En algún momento de 2024 eso dejó de ser cierto. La pestaña Para ti se volvió la predeterminada. Las publicaciones promocionadas se multiplicaron. El cebo de interacción se volvió el estilo dominante. Abría X para ver qué hacían tres amigos y lo cerraba 40 minutos después sin haber leído nada de lo que vine a buscar.

Probé lo obvio — cambiar a la pestaña Siguiendo, silenciar palabras, crear listas. Cada cosa ayudaba un poco. Pero el algoritmo Para ti se reseteaba solo, la barra lateral derecha seguía mostrándome tendencias que no me importaban y los anuncios se colaban. No había un solo lugar para apagar el ruido.

La primera versión: 200 líneas de JavaScript

Escribí una pequeña extensión de Chrome un fin de semana. Hacía tres cosas:

  1. Ocultaba publicaciones marcadas como "Promoted"
  2. Ocultaba la barra lateral derecha
  3. Forzaba la línea de tiempo a "Siguiendo"

Eso era todo. ~200 líneas, sin interfaz, solo activable desde el icono. Compartí el código con algunos amigos que también vivían en X. Empezaron a pedir funciones.

"¿Puede silenciar cuentas sin dejar de seguirlas?" Claro.

"¿Puede filtrar por palabra clave?" Sí.

"¿Puede resumir hilos largos con IA?" Hmm. Eso es una función real.

De script a producto

La petición del resumen con IA fue el momento en que dejó de ser un script de hobby. Para hacer IA bien necesitaba:

Nada de eso estaba en el plan original de "extensión de fin de semana". Pero pensé: si voy a construir todo eso para una función, mejor lo hago bien para que el resto de la extensión también lo use — sincronizar filtros entre dispositivos, guardar preferencias en la nube, etc.

El proyecto de hobby se convirtió en un SaaS completo. En retrospectiva: probablemente excesivo para la v1. Pero las partes que terminé manteniendo (auth, sync, pagos) hacen el producto genuinamente mejor, así que no me arrepiento.

El stack tecnológico

Para cualquiera que quiera construir un SaaS pequeño similar, esto funcionó:

Costo mensual total: menos de 10$. La extensión está en Chrome Web Store (5$ una vez por la cuenta de desarrollador).

Lo que me sorprendió

Auth es más difícil de lo que parece. Email + contraseña con verificación, reseteo, sesiones, JWT, límite en login — es una lista larga. No lo habría hecho desde cero si hubiera sabido el trabajo. Usa una librería o un servicio si puedes.

Stripe es más fácil de lo que parece. Dos endpoints tRPC (checkout + customer portal), un webhook, listo. La parte difícil es verificar tu cuenta bancaria, no la integración.

La revisión de Chrome Web Store es impredecible. Mi primer envío fue rechazado por un permiso sin usar. El segundo fue aprobado en días. Cada actualización pasa por revisión otra vez — prepárate para esperar 1-7 días.

Qué sigue

La extensión está activa, el sitio en línea, los pagos funcionan de extremo a extremo. Los próximos ~3 meses son de distribución: posts de blog (estás leyendo uno), lanzamiento en Product Hunt, Reddit, IndieHackers.

Si tienes un feed de X / Twitter que te molesta, me encantaría que la probaras. El plan gratis cubre lo que la mayoría necesita. Y si tienes feedback, mi email está en el pie de página — leo todo.