Proyecto personal · marzo de 2026
Stock Alerts
Backend de un SaaS de alertas de acciones. Watchlists, reglas de precio y avisos por email y Telegram, con un worker que revisa el mercado en segundo plano.
Backend de una plataforma de alertas bursátiles: el usuario arma listas de seguimiento de acciones, define reglas de precio y recibe un aviso por email o Telegram cuando se cumplen. Además recibe un reporte semanal de sus acciones.
Arquitectura
Monorepo con dos aplicaciones NestJS y un paquete compartido:
- API REST: autenticación con JWT, CRUD de watchlists y reglas, webhook de Telegram y datos de mercado.
- Worker: procesa colas de BullMQ sobre Redis. Consulta precios a Finnhub, guarda snapshots, evalúa las reglas de cada usuario y envía las notificaciones.
- Capa de datos compartida: esquema Prisma sobre PostgreSQL, usado por las dos aplicaciones.
API NestJS ──jobs──▶ Redis (BullMQ) ──▶ Worker NestJS
│ │
└──────────── PostgreSQL ─────────────┘
│
Finnhub · SMTP · Telegram
Separar la API del worker permite que las revisiones de precio y los reportes corran en segundo plano sin frenar las peticiones de los usuarios.
Entorno
Todo el entorno local se levanta con Docker Compose, con plantillas de variables de entorno separadas para la API, el worker y Docker, y documentación de seguridad y manejo de secretos.