How themconquer/knowgap-extension works
KnowGap is presented here as a Chrome extension for Canvas courses. Its principal workflow is: the popup identifies the Canvas course and user role, then presents the instructor or student view; those views retrieve course performance data and use the backend for course updates and video recommendations. The README also describes risk prediction, cached recommendations, and risk-level mental-health videos. Backend implementation is not in this tree, so backend internals and their relationships are documented only at the service boundary; several extension pages appear to be boilerplate.
Main entry points: Studentview.jsx Student view · InstructorView.jsx Instructor view · Popup.jsx Role and course router · background.js API message relay
Components 14
Extension runtime
- Role and course router
src/pages/Popup/Popup.jsx - API message relay
src/pages/Background/background.js - Content script
src/pages/Content/content.js - New tab page
src/pages/Newtab/Newtab.jsx - Options page
src/pages/Options/Options.tsx - Devtools panel
src/pages/Panel/Panel.tsx
Course experience
- Instructor view
src/pages/Popup/InstructorView.jsx - Student view
src/pages/Popup/Studentview.jsx
Recommendations and risk
- Risk calculation
src/pages/Popup/Studentview.jsx - Video and support APIs
- Cached video data
Other components
- Extension user
- Canvas LMS
- KnowGap backend
Connections 13
- Role and course router → Instructor view: renders instructor
src/pages/Popup/Popup.jsx - Role and course router → Student view: renders student
src/pages/Popup/Popup.jsx - Role and course router → Canvas LMS: validates token and fetches enrollment
src/pages/Popup/Popup.jsx - Instructor view → Canvas LMS: fetches course data
src/pages/Popup/InstructorView.jsx - Student view → Canvas LMS: fetches assignments and quizzes
src/pages/Popup/Studentview.jsx - Instructor view → API message relay: sends API message
src/pages/Popup/InstructorView.jsx - Student view → API message relay: requests videos
src/pages/Popup/Studentview.jsx - API message relay → KnowGap backend: forwards API request
src/pages/Background/background.js - Instructor view → KnowGap backend: updates course context and video links
src/pages/Popup/InstructorView.jsx - Student view → KnowGap backend: updates course and token data
src/pages/Popup/Studentview.jsx - Student view → Risk calculation: computes risk score
src/pages/Popup/Studentview.jsx - KnowGap backend → Video and support APIs: provides recommendations
README.md - Video and support APIs → Cached video data: stores results for reuse
README.md