Volver a proyectos
Nivel Intermedio

Trello Automation Suite

Node.js • Trello API • ETL • Automatización

#RPA #Automatización #Node.js #ETL #Trello API #Scripts
Screenshot de Trello Automation Suite
Stack:
Node.js
JavaScript
Capturas del proyecto 2 imágenes

Sistema de automatización construido para un Project Manager que gestionaba 30+ tableros de Trello: scripts de extracción ETL asíncronos que procesan 500+ tarjetas, rotan tokens via Round-Robin para no ser bloqueados por rate limiting, aplican reglas de negocio configurables y generan reportes de KPIs automáticamente — de 4 horas de trabajo manual a 15 minutos durante 12 meses sin interrupciones.


🚀 Impacto y Números

  • 93% de reducción en tiempo: de 4 horas diarias a 15 minutos — ~80 horas/mes liberadas al cliente
  • 30+ tableros y 500+ tarjetas procesados simultáneamente en cada ejecución
  • 0 errores de rate limiting gracias a la rotación inteligente de múltiples tokens de API
  • 12 meses en producción sin intervención manual ni fallos críticos

⚡ Cómo está construido

Rotación multi-token Round-Robin

  • El problema real: la API de Trello tiene límites estrictos de requests por token — con un solo token, procesar 500+ tarjetas con todas sus acciones y campos personalizados tomaría horas o resultaría en ban
  • La solución: pool de tokens de autenticación rotados secuencialmente con fetchWithRetry — distribuye la carga, triplica el throughput efectivo y nunca supera el límite de ningún token individual
  • Retry exponencial: ante inestabilidad de red o sobrecarga de API, los reintentos con backoff exponencial garantizan la completitud del reporte

Motor de reglas de negocio configurable

  • Reglas como configuración: el cliente define condiciones en TaskBoardTracker.js (“tarjetas vencidas hace 5 días en lista X”, “tickets sin asignado esta semana”) sin tocar la lógica de ejecución — separación explícita entre qué calcular y cómo calcularlo
  • Lógica temporal compleja propia: funciones como isDateInThisWeek() y isDateInLastMonth() calculan contextos temporales aplicados a las fechas de las tarjetas, sin librerías de fechas externas
  • Output listo para el cliente: normalización de JSON jerárquico a CSV plano con json2csv — el reporte llega en el formato que el cliente ya sabe leer

Extracción ETL asíncrona

  • Jerarquía completa en paralelo: extracción de Organización → Board → List → Card → Actions → Custom Fields con Promise.all para máxima eficiencia
  • Caché en disco: respuestas de API guardadas localmente para depuración offline y para no consumir cuota durante el desarrollo de nuevas reglas

�️ Stack

Core: Node.js, JavaScript ES Modules Networking: Axios (requests, retry, token rotation) Data: json2csv (transformación), fs (caché en disco) Config: Dotenv (tokens y variables de entorno) Patterns: DAO, Configuration Object, Retry Pattern, Round-Robin Pool


💼 Lo que este proyecto demuestra

Este proyecto demuestra que puedo:

  • ✅ Identificar cuellos de botella operativos reales y resolverlos con código — no solo construir features de tutorial
  • ✅ Diseñar sistemas tolerantes a fallos para APIs externas con rate limiting real: retry, backoff, pool de tokens
  • ✅ Desacoplar lógica de negocio de lógica de ejecución — el cliente cambia las reglas sin necesitar al desarrollador
  • ✅ Entregar valor de negocio tangible y medible: 80 horas/mes y 12 meses de operación continua

Diferenciador clave: No es un clon de Trello para practicar React. Es una herramienta real que solucionó un problema concreto de un cliente real, con restricciones reales de API, y que corrió en producción durante un año.