Design system contents

Components

Lesson player and completion

Media, lesson progress, and the next step stay together.

On this page

Purpose and composition

VideoHeader composes the learner’s main media area and curriculum. PrivateCourseView supplies completion state and actions.

Anatomy

  • Lesson/course identity
  • Validated embedded player or read-below fallback
  • Mark complete control
  • Next-lesson action or configured final CTA
  • Curriculum and progress

Configuration and variants

Configuration and variants
Input or variantContract
embedCodePass through the source safe-embed boundary; do not inject arbitrary HTML directly.
isComplete / onToggleCompleteParent supplies confirmed progress and the mutation callback.
lessons / courseIdDrive curriculum, current context, and destinations.
isOwnerDisables learner completion while the owner previews.
Final CTARequires a configured CTA, last lesson, completed state, and a non-owner learner.

States and feedback

Incomplete and complete are explicit states. Missing media points the learner toward lesson text. The reference media is an intercepted offline poster, not a live provider session.

Interaction and responsive behavior

A flexible player sits beside a 330px curriculum; below 1001px the curriculum becomes a disclosure below the player.

Accessibility and known limits

Completion exposes aria-pressed and progress has a programmatic value. Media accessibility still depends on the actual lesson captions and transcript; screenshots cannot verify them.

Source references

Source references
FileResponsibility
src/components/courses-public/logged-in/VideoHeader.tsxMedia and navigation
src/components/courses-public/logged-in/PrivateCourseView.tsxProgress ownership

Interface examples

Native TeachKit interfaces with fictional course, account, and learner records. Service responses and media are isolated demonstrations; no customer data or live changes. Captured at 2× resolution or higher. Select an image to inspect it full size.

Learner · Featured section · Light · Desktop · 2928 × 1825 px

Source audit: 2026-10-22 · Revision 903bbf05ca9d · Documentation v2.0.0