How jgoodloe/ocsp-monitor works
OCSP Monitor is a single-process Flask application for configuring certificate responders, running scheduled or on-demand OCSP checks, and viewing current status and history. Its main workflow is operator configuration through the web UI/API, scheduled or manual verification, persistence of results and status changes in SQLite, and optional Uptime Kuma notification. The sampled source is a partial excerpt of one large application module; finer internal call relationships and several documented features are therefore represented at the subsystem level, with README evidence where appropriate.
Main entry points: app.py Flask app and API · index.html Web UI
Components 15
Operator interface
- Web UI
app/templates/index.html - Flask app and API
app/app.py
Checks and scheduling
- Due-check scheduler
app/app.py - OCSP verification
app/app.py - Verification tests
app/app.py - Result and timing
app/app.py - Uptime Kuma push
app/app.py
Configuration and records
- Responder management
app/app.py - Test settings
app/app.py - SQLite state
app/app.py - Status history
app/app.py
Request safeguards
- CSRF and rate limits
app/app.py
Other components
- Operator
- OCSP responder
- Uptime Kuma
Connections 17
- Operator → Web UI: uses
README.md - Web UI → Flask app and API: requests API
README.md - Flask app and API → Responder management: routes requests
app/app.py - Flask app and API → Test settings: routes settings
README.md - Responder management → SQLite state: stores configuration
app/app.py - Test settings → SQLite state: stores defaults
README.md - Due-check scheduler → OCSP verification: runs due checks
README.md - Flask app and API → OCSP verification: runs on-demand checks
README.md - OCSP verification → Verification tests: evaluates tests
README.md - OCSP verification → OCSP responder: sends OCSP request
README.md - OCSP verification → Result and timing: produces result
app/app.py - Result and timing → SQLite state: updates responder
app/app.py - Result and timing → Status history: records status changes
app/app.py - OCSP verification → Uptime Kuma push: pushes results
README.md - Uptime Kuma push → Uptime Kuma: sends status
README.md - Flask app and API → CSRF and rate limits: guards mutations
app/app.py - Web UI → Flask app and API: requests history
README.md