TeachKit project

TeachKit / Design system

Documentation v0.1 · Released product

Design system contents

Components

External connection panels

Make connection intent explicit with the provider identity and a written Connect or Disconnect action.

On this page

Purpose and usage

Make connection intent explicit with the provider identity and a written Connect or Disconnect action.

Anatomy

Anatomy
PartContract
LogoProvider asset in raised header
DescriptionOptional explanation
ActionConnect or Disconnect
ReferenceLearn More destination

Variants and configuration

Variants and configuration
Input or variantBehavior
isConnectedControls action label and visual treatment
onConnect / onDisconnectContainer owns actual integration
logoSrc / nameProvider identity
learnMoreUrlExternal documentation destination

State coverage

State coverage
StateImplemented behavior
DisconnectedConnect action
ConnectedDisconnect action

Interaction and composition

  • Display only a state established by the owning workflow.
  • Keep paid subscription status separate from connected status.
  • Do not imply OAuth success from a static panel.

Accessibility and readiness

Connected/disconnected specimens are simulated, with no OAuth credentials or live account changes. Verify focus, useful logo alt text, failure and pending states in the actual connection workflow.

Composition example

<ExternalConnection name="Kit" logoSrc="/logos/kit.svg"
  isConnected={connected} onConnect={connect}
  onDisconnect={disconnect} learnMoreUrl={helpUrl} />

Source references

Source references
FileResponsibility
src/components/ExternalConnection.tsxProvider card and callbacks

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.

Connections · Component detail · Light · Desktop · 1920 × 514 px
Creator Payments · Screen · Light · Desktop · 2880 × 2000 px
Creator Email · Screen · Light · Desktop · 2880 × 2000 px

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