Sebastián Sarmiento

← Product Book · 01 · Analytics & Monitoring

Only what changes the decision of the day

Student Activity Monitor

Production
Student Activity Monitor screenshot
Signal volume 6–8 messages/day (down from 15–20)
Poll interval Every 5 min · school hours only
Dependencies 0 external · JSON state · health check
Status Production · Railway → Render

A Node.js process with zero external dependencies that polls a learning platform API every five minutes, diffs against persisted state, and sends only the signals worth a Telegram notification — goal milestones, critical-topic alerts, session close. Cut volume from 15–20 raw pings to 6–8 meaningful messages per day. Scaled from one student to several without touching the core logic.

Stack Node.js 180 depsTelegram Bot API