UT Course Sentinel is a Chrome Extension designed for educational and personal experimentation with Chrome Manifest V3, background service workers, offscreen documents, and web automation concepts.
It is a client-side monitoring tool that can detect changes in publicly visible webpage data and notify the user.
Note: This project is for learning, experimentation, and demonstration only. It is not intended for deployment, public distribution, or real-world use, and should not be used to automate interactions with systems that prohibit automated polling.
The author makes no claim about its suitability for any operational environment.
- Chrome Manifest V3 architecture
- Background service worker
- Content scripts
- Offscreen document for DOM parsing and audio playback
- Course Watchlist UI
- Stores items in
chrome.storage.local - Adjustable polling intervals per course (5s–3600s)
- Stores items in
- Change Detection System
- Fetches course pages and extracts table rows
- Offscreen DOM parsing via
DOMParser - Detects status transitions such as:
Closed → OpenClosed → Waitlisted
- Notification System
- Optional sound alerts using offscreen audio context
- Optional desktop notifications (
chrome.notifications)
- Clean Storage Model
- Maintains a log of status changes
- Safely updates and removes courses
- MV3 Offscreen Document Usage
- Enables DOM parsing outside of popup/content scope
- Demonstrates proper creation, message passing, and synchronous responses