How eraytundzhaysezgin/coe203-project2 works
This is a single-file campus opportunity monitor. Its workflow accepts a CLI scan request, renders a searchable page in Playwright, parses and validates opportunity records, compares them with persisted state, and sends push alerts for newly available seats. State handling and change detection are distinct internal stages, though all application logic lives in one source file. The README describes retry behavior and local-page fallback; the graph focuses on relationships visible in the excerpt. Runtime state storage and external services are not repository source files.
Main entry points: campus_monitor.py Scan runner
Components 10
Other components
- Monitor user
- CLI entry
campus_monitor.py - Scan runner
campus_monitor.py - Page acquisition
campus_monitor.py - Target page
- Record parsing
campus_monitor.py - Change detection
campus_monitor.py - Monitor state
- Push delivery
campus_monitor.py - ntfy service
Connections 9
- Monitor user → CLI entry: provides arguments
campus_monitor.py - CLI entry → Scan runner: starts scan
campus_monitor.py - Scan runner → Page acquisition: fetches page
campus_monitor.py - Page acquisition → Target page: searches and reads
campus_monitor.py - Scan runner → Record parsing: parses HTML
campus_monitor.py - Scan runner → Monitor state: loads and saves
campus_monitor.py - Scan runner → Change detection: detects transitions
campus_monitor.py - Scan runner → Push delivery: sends alerts
campus_monitor.py - Push delivery → ntfy service: posts notification
campus_monitor.py