Skip to main content

Complete Interactive Components Library

Explore all 11 powerful interactive components that transform your documentation from static to dynamic! Each component is production-ready and fully customizable.

Component Categories

Learning & Education

Code & Development

Data & Information

API & Integration

Visual & Media


Interactive Quiz

Test user knowledge with multiple-choice questions, instant feedback, and progress tracking.

Test Your Tech Docs Knowledge

Question 1 of 4

What does API stand for?

Usage

import InteractiveQuiz from '@site/src/components/InteractiveQuiz';

<InteractiveQuiz
title="Quiz Title"
questions={[
{
question: 'Question text?',
options: ['Option 1', 'Option 2', 'Option 3', 'Option 4'],
correctAnswer: 0,
explanation: 'Why this is correct...'
}
]}
/>

Terminal Simulator

Demonstrate CLI commands with a realistic terminal interface.

$ Git Tutorial
Welcome! Learn Git commands in this interactive terminal. Type 'help' to see available commands.
$
💡 Tip: Use ↑/↓ arrows for command history, Ctrl+L to clear

Usage

import TerminalSimulator from '@site/src/components/TerminalSimulator';

<TerminalSimulator
title="$ Terminal"
commands={{
'ls': () => 'file1.txt file2.txt',
'pwd': () => '/home/user'
}}
/>

Image Comparison

Before/after image comparison with an interactive slider.

After
After
Before
Before

Usage

import ImageComparison from '@site/src/components/ImageComparison';

<ImageComparison
beforeImage="/img/before.jpg"
afterImage="/img/after.jpg"
beforeLabel="Original"
afterLabel="Improved"
/>

Searchable Table

Interactive data table with search, sort, and pagination.

🔍
Component
Category
Complexity
Best For
InteractiveQuizEducationMediumTesting knowledge
TerminalSimulatorDevelopmentMediumCLI demos
ImageComparisonVisualSimpleBefore/after
SearchableTableDataMediumData display
LiveSearchDataSimpleFiltering content
Page 1 of 3(11 results)

Usage

import SearchableTable from '@site/src/components/SearchableTable';

<SearchableTable
columns={[
{ key: 'name', label: 'Name' },
{ key: 'value', label: 'Value' }
]}
data={[
{ name: 'Item 1', value: '100' },
{ name: 'Item 2', value: '200' }
]}
/>

Instant search with filtering and category tags.

🔍
6 results
Filters:

Interactive Quiz

Create engaging quizzes to test user knowledge with instant feedback.

Education

Terminal Simulator

Demonstrate CLI commands in a realistic terminal environment.

Development

Code Editor

Live JavaScript code editor with instant execution and output.

Development

API Simulator

Interactive API endpoint testing with request/response simulation.

Integration

Progress Tracker

Visual progress tracking for tutorials and multi-step guides.

Education

Image Comparison

Before/after image slider for visual comparisons.

Visual

Usage

import LiveSearch from '@site/src/components/LiveSearch';

<LiveSearch
items={[
{ name: 'Item 1', description: '...', category: 'Type A' },
{ name: 'Item 2', description: '...', category: 'Type B' }
]}
searchFields={['name', 'description']}
/>

Interactive Callout

Styled alerts, tips, warnings, and notifications.

ℹ️Information

This is an informational message that provides helpful context or details.

Success

Great job! The operation completed successfully. Everything is working as expected.

⚠️Warning

Proceed with caution. This action may have important implications that you should consider.

🚫Danger

Critical alert! This is a serious issue that requires immediate attention.

💡Pro Tip

Here's a useful tip that can help you work more efficiently and effectively.

📝Note

Please note this important information for future reference.

Individual Usage

💡Pro Tip

You can nest any content inside callouts, including bold text, inline code, and even other components!

Usage

import InteractiveCallout from '@site/src/components/InteractiveCallout';

<InteractiveCallout type="warning" title="Important" dismissible={true}>
Your custom message here...
</InteractiveCallout>

// Types: info, success, warning, danger, tip, note

Previously Created Components

For the first 5 components, see our main interactive components page:

  • Interactive Code Editor - Live JavaScript execution
  • Interactive Tabs - Tabbed content organization
  • Interactive Accordion - Collapsible FAQ sections
  • API Simulator - API request testing
  • Progress Tracker - Tutorial progress tracking

Complete Component List

ComponentCategoryComplexityBest Use Case
Interactive QuizEducationTesting knowledge, assessments
Progress TrackerEducationTutorial completion tracking
Code EditorDevelopmentLive coding demonstrations
Terminal SimulatorDevelopmentCLI command tutorials
Interactive TabsNavigationMulti-language code samples
AccordionNavigationFAQs, collapsible sections
API SimulatorIntegrationAPI documentation, testing
Searchable TableDataStructured data display
Live SearchDataContent filtering, discovery
Image ComparisonVisualBefore/after comparisons
Interactive CalloutVisualAlerts, tips, warnings

Getting Started

  1. Pick a component from the list above
  2. Copy the import statement from the usage example
  3. Paste into your MDX file at the top
  4. Customize the props to fit your needs
  5. Preview with npm start

Best Practices

  • Use components sparingly - don't overwhelm pages
  • Provide meaningful defaults and examples
  • Test on mobile devices for responsiveness
  • Combine components for rich experiences
  • Keep content accessible with proper labels

Resources


You Now Have 11 Interactive Components!

Transform your documentation from static to spectacular.

Fully Responsive Accessible Customizable Production Ready

Was this page helpful?