0.19.2-alpha0
Overview
This is an UNSTABLE pre-release for preliminary testing of initial workflows for a feature-flagged pilot of Courses in Kolibri. Core aspects of the Course experience have not yet been implemented. Some data is also not yet present and displayed. Please see Product Issue: Courses are discoverable within downloaded channels, and coaches can preview them and assign them to learners for a general overview of the scope of the workflow.
What's Changed
QA review list: Foundational work for Courses in Kolibri pilot
Course management page
- [ ] "Courses" page appears at the same level as Lessons and Quizzes in Coach navigation
- [ ] Verify coaches can view all assigned courses on this page
- [ ] Verify coaches can manage course visibility from this page Not present: Other columns beyond visibility toggle within Courses main page table (i.e. status, learners, mastery)
Course assignment workflow
Previewing/selecting course
- [ ] Clicking to assign a course opens the side panel workflow (same pattern as lessons/quizzes)
- [ ] Only one course can be selected at a time (radio buttons, no multi-select)
- [ ] Clicking on the course card opens a course preview (further details below)
- [ ] The side panel and cards use existing routing, focus trapping, and card a11y patterns
Learner assignment
- [ ] The course can be assigned in the same manner as lessons and quizzes: entire class, existing groups, or adhoc groups of learners Note: the assignment confirmation via signing in as the learner workflow is not yet completed and not in scope of this alpha release
Course Preview
- [ ] Condensed course information preview displays in the sidebar using an accordion layout
- [ ] Each accordion is one UNIT
- [ ] With the accordion OPEN, the coach can preview the LESSONS in the unit. (note: the Figma spec is a bit misleading here. there will not be single resources i.e. a PDF or video at the preview level)
- [ ] The Unit accordion has a title, and each lesson has a lesson icon, title, and the number of resources in that lesson
- [ ] Coaches cannot preview pre-test or post-test questions, or specific resources from within the side panel
- [ ] The header section of the course preview page has the title, thumbnail, description, as well as the number of units and resources
- [ ] Icon buttons for "expand all" and "collapse all" units are functional
NOTE: the accordions in the course preview and in the learner/group selection does not match exactly the Figma. I vetoed the design changes that Tomiwa tried to sneak in at the last moment 😅
Particular areas to QA and other notes:
- I already suspect (from my own updating the channel just now) that we are not doing a good job handling things on the course list page when the course is deleted from the device via channel management. Can we stress-test this a bit? (learner considerations to come later)
- We haven't explicitly prevented the same course from being added multiple times and to the same group(s) of learners or class. Yet to be determined if we might change this.
- The "preview" option in the dropdown menu on the courses list main page leads nowhere, and the "edit" should be updated to lead to recipients, not the course selection page. Tracked here
PRs
- Courses frontend setup by @AlexVelezLl in https://github.com/learningequality/kolibri/pull/14077
- Add sync operations and filter utilities for classroom partitioning by @bjester in https://github.com/learningequality/kolibri/pull/14070
- Create courses models and viewset by @AlexVelezLl in https://github.com/learningequality/kolibri/pull/14091
- Migrate from yarn to pnpm by @rtibbles in https://github.com/learningequality/kolibri/pull/14086
- Fix missing dep in Coach by @nucleogenesis in https://github.com/learningequality/kolibri/pull/14098
- Replace CSS Variables in favor of theme variable for css styling by @AllanOXDi in https://github.com/learningequality/kolibri/pull/14089
- Add select courses and recipients subpages by @AlexVelezLl in https://github.com/learningequality/kolibri/pull/14103
- Add Course Session Context to Progress Tracking by @LianaHarris360 in https://github.com/learningequality/kolibri/pull/14116
- Learn Course Assignments API Endpoints by @LianaHarris360 in https://github.com/learningequality/kolibri/pull/14113
- Add UnitTestAssignment model for managing pre/post tests in course units by @AllanOXDi in https://github.com/learningequality/kolibri/pull/14115
- Implement Course list data loading and display by @AllanOXDi in https://github.com/learningequality/kolibri/pull/14114
- Restore frontend linting and fix issues that happened in the interim by @rtibbles in https://github.com/learningequality/kolibri/pull/14126
- ResourceLayout component architecture for course content display by @rtibbles in https://github.com/learningequality/kolibri/pull/14109
- Prevent traversal of symlinks in node_modules during egg info generation. by @rtibbles in https://github.com/learningequality/kolibri/pull/14127
- Add API endpoints for activating/closing quizzes & returning active quiz by @AllanOXDi in https://github.com/learningequality/kolibri/pull/14121
- Better handle unclean server shutdown by @rtibbles in https://github.com/learningequality/kolibri/pull/14123
- Add linting to prevent non-scoped lodash/dateFn imports. by @rtibbles in https://github.com/learningequality/kolibri/pull/14125
- Course Preview by @nucleogenesis in https://github.com/learningequality/kolibri/pull/14117
Full Changelog: https://github.com/learningequality/kolibri/compare/v0.19.1...0.19.2-alpha0