TeachKit project

TeachKit / Design system

Documentation v0.1 · Released product

Design system contents

Patterns

Edit video and learning content

Manage a lesson’s media and description without collapsing its action/resource context into a generic text field.

On this page

Workflow

Workflow
StepResponsibility
1Open the actual lesson editing panel.
2Choose provider or edit the supported embed code.
3Preserve title, duration and actual description.
4Manage actions, links and downloads in their respective sections.
5Validate the embed and URL fields before the parent save.

Decisions and composition

  • The video-lessons page has an iframe-domain allowlist.
  • Links and downloads have separate labels and semantics.
  • Content order and stable lesson ID belong to the parent.

Errors, recovery and limits

  • Provider search/loading/failure are separate states from saving a course.
  • No artificial action items or downloads are added to the real course fixture.
  • Trix hydration must finish before capturing the editor.
  • Do not execute uploads or external integrations to fill an example.

Source references

Source references
FileResponsibility
src/components/LessonItem.tsxEditing panel
src/components/TrixEditor.tsxRich content
src/components/SortableLesson.tsxOrder

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
Lesson Editor · Component detail · Light · Desktop · 1920 × 742 px
Creator Instructions · Screen · Light · Desktop · 2880 × 2000 px
Creator Instructions · Screen · Light · Desktop · Full Page · 2880 × 6826 px

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