← Proyectos

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.

  • NestJS
  • TypeScript
  • PostgreSQL
  • Prisma
  • BullMQ
  • Redis
  • Docker

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.