Automated Calendar Monitor
Checks shared university LMS calendar updates every 15 minutes and queues scheduled event alerts.
Project 02 / 13 · Automation / Cloud / Web
A voluntary university email signup and alert distribution service for a shared SLTC LMS calendar monitor, built with Google Apps Script, Google Sheets, GitHub Pages and Cloudflare Turnstile.

SLTC LMS Email Alert System is an automated university student community service that bridges academic LMS calendar deadlines with students’ inboxes. It eliminates missed assignments and deadline surprises through automated shared-calendar monitoring.
The system features a clean, responsive front-end hosted on GitHub Pages that enables students to subscribe using their verified @sltc.ac.lk university emails. Google Apps Script and HTMLService power the backend subscription engine, using a secure Google Sheet as the subscriber datastore.
Security and reliability safeguards include single-use expiring confirmation links, signed instant-unsubscribe tokens, client-side Turnstile verification, request rate limiting, daily abuse caps, and a durable retry queue with revision deduplication to prevent duplicate notifications.
Checks shared university LMS calendar updates every 15 minutes and queues scheduled event alerts.
Enforces strict @sltc.ac.lk email validation with one-click expiring confirmation tokens.
Zero tracking or marketing, signed one-click unsubscribe links, and optional Cloudflare Turnstile bot protection.
Features quota deferral, retry queues, and event revision deduplication via Google Apps Script and Sheets datastore.
Front-End Delivery → GitHub Pages serves the mobile-friendly subscriber interface with real-time validation.
Backend Automation → Google Apps Script HTMLService handles tokenized confirmation links and unsubscribe workflows.
Data & Dispatch Layer → Private Google Sheet acts as the subscriber database feeding the durable dispatch monitor.
Open an image to see the full detail. Use the arrow keys to move through the gallery.
Official references for the tools used in this project.