TeachKit project

TeachKit / Design system

Documentation v0.1 · Released product

Design system contents

Patterns

Organize a course and its lessons

Keep course identity, lesson order and section-specific editing in one recognizable creator context.

On this page

Workflow

Workflow
StepResponsibility
1Load the owner’s course using the existing server authorization.
2Resolve the course sidebar destinations.
3Edit identity and supporting sections separately.
4Use the real sortable lesson container for ordering.
5Save the intended course state and verify its public/private destinations.

Decisions and composition

  • Stable IDs must survive reordering.
  • A source course’s closed status should not be rewritten merely to make a capture appear launched.
  • Creation can reuse an existing draft, as MainNav’s creation response specifies.

Errors, recovery and limits

  • Capture fixtures simulate owner access; they never create or delete a course.
  • Pointer reordering requires an equivalent keyboard/non-drag review.
  • A fixed flex wrapper and a responsive dropdown wrapper have different phone contracts.

Source references

Source references
FileResponsibility
src/components/SidebarLayout.tsxComposition
src/constants/sidebars.tsxDestinations
src/components/SortableLesson.tsxOrdering

Examples from the app

Actual TeachKit UI with Thomas McGee’s course content. Session, progress and connection specimens are simulated; no student data or live changes. Captured at 2× resolution or higher. Select an image to inspect it full size.

Creator Video Lessons · Screen · Light · Desktop · 2880 × 2000 px
Creator Video Lessons · Screen · Light · Desktop · Full Page · 2880 × 4244 px

Source audit: 2026-10-07 · Revision d8cf23d0a329 · Documentation v0.1