How riteshk28/cae_audit_tool works
This is a Flask dashboard for auditing course-outline PDFs. The main workflow uploads a PDF, extracts its text, applies assessment-weight and course-learning-outcome analyses, then renders the results. The sampled code shows separate cognitive, psychomotor, and affective analyses, plus CLO counting. The README also mentions PDF-derived text and the audit dashboard. The template is not present in the supplied tree, and the excerpt omits parts of utils.py, so those implementation details are not expanded.
Main entry points: app.py Flask app · word_list.xlsx Domain verb lists · utils.py PDF text extraction · static Uploaded PDF
Components 13
Dashboard
- Flask app
proj_submission/app.py - Uploaded PDF
proj_submission/static - Dashboard results
proj_submission/app.py
Course analysis
- PDF text extraction
proj_submission/utils.py - Course identification
proj_submission/utils.py - Assessment audit
proj_submission/utils.py - CLO count
proj_submission/utils.py - Cognitive analysis
proj_submission/utils.py - Psychomotor analysis
proj_submission/utils.py - Affective analysis
proj_submission/utils.py
Reference data
- Domain verb lists
proj_submission/word_list.xlsx - Audit rules
proj_submission/rules.xlsx
Other components
- Dashboard user
Connections 16
- Dashboard user → Flask app: uploads PDF
- Flask app → Uploaded PDF: saves file
- Flask app → PDF text extraction: calls read_file
- PDF text extraction → Uploaded PDF: reads PDF
- Flask app → Course identification: calls parse_course_name
- Flask app → Assessment audit: calls rule_1
- Flask app → CLO count: calls page_len
- Flask app → Cognitive analysis: calls rule_2_cd
- Flask app → Psychomotor analysis: calls rule_2_pd
- Flask app → Affective analysis: calls rule_2_ad
- Cognitive analysis → Domain verb lists: reads domain terms
- Psychomotor analysis → Domain verb lists: reads domain terms
- Affective analysis → Domain verb lists: reads domain terms
- Assessment audit → Audit rules: uses audit rules
- Flask app → Dashboard results: renders results
- Dashboard results → Dashboard user: displays tables