mcpField
T
tutorial-design

tutorial-design

github.com/nickcrewDevelopment6298 installsUpdated 17w ago
Repository

About tutorial-design

Tutorial Design is a skill for authors creating hands-on technical tutorials, workshops, and learning series. It structures material into progressive steps with runnable examples, exercises, checkpoints, and troubleshooting, then guides end-to-end validation.

Key features

  1. 01Define learning objectives and prerequisites
  2. 02Sequence concepts into progressive steps
  3. 03Design exercises and checkpoints
  4. 04Write tutorials with runnable examples
  5. 05Validate steps and troubleshoot scenarios

Use cases

  1. 01Create a getting-started guide for a library or API
  2. 02Build workshop or multi-part training materials
  3. 03Turn documentation into guided lessons
  4. 04Design coding exercises with self-assessment

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/nickcrew/claude-cortex --skill tutorial-design

After installing, type/tutorial-designin Claude Code to confirm it loaded.

Bundled filesreferences/design-patterns.md

Details

From the project README

Tutorial Design

Design and write hands-on tutorials that transform complex technical concepts into engaging, progressive learning experiences with exercises, checkpoints, and troubleshooting guidance.

When to Use This Skill

  • Writing a getting-started tutorial for a library, API, or tool
  • Creating workshop materials for team training or conferences
  • Building multi-part learning series with progressive difficulty
  • Designing coding exercises with self-assessment checkpoints
  • Converting existing documentation into guided learning content
  • Creating quick-start guides that get users productive fast

Quick Reference

ResourcePurposeLoad when
references/design-patterns.mdProgressive disclosure patterns, exercise types, checkpoint design, difficulty calibration, prerequisite mappingPlanning tutorial structure or designing exercises

Workflow Overview

Phase 1: Objectives   → Define learning outcomes, prerequisites, and audience
Phase 2: Decompose    → Break concepts into atomic, sequenced steps
Phase 3: Design       → Create exercises, checkpoints, and troubleshooting tips
Phase 4: Write        → Produce tutorial content with runnable examples
Phase 5: Validate     → Test the tutorial path end-to-end

Phase 1: Define Learning Objectives

Every tutorial starts with clear outcomes.

Opening Section Template
## What You'll Learn

- [Specific, measurable outcome 1]
- [Specific, measurable outcome 2]
- [Specific, measurable outcome 3]

## Prerequisites

- [Required knowledge or setup]
- [Tools needed]

## Time Estimate

~[X] minutes

## What You'll Build

[Brief description or screenshot of the final result]

Writing good objectives:

  • Use action verbs: "build", "configure", "debug", "deploy" — not "understand" or "learn about"
  • Make them testable: the reader should be able to verify they achieved each outcome
  • Scope realistically: 3-5 objectives per tutorial

Phase 2: Concept Decomposition

Break the topic into atomic learning steps.

Sequencing Rules
  1. One concept per section — never introduce two new ideas at once
  2. Dependency order — concepts must build on what came before
  3. Concrete before abstract — show the working example, then explain the theory
  4. Simple before complex — start with the minimal version, layer complexity
Concept Map

Before writing, sketch a dependency graph:

[Prerequisites] → [Core concept A] → [Core concept B]
                                    ↘ [Variation 1]
                  [Core concept A] → [Core concept C] → [Advanced topic]

Each node becomes a section. Dependencies become the section order.


Phase 3: Design Exercises and Checkpoints

Exercise Types
TypeDifficultyWhen to use
Fill-in-the-blankLowReinforce syntax after an example
Debug challengeMediumTeach error reading and common mistakes
Extension taskMediumAdd a feature to working code
From scratchHighBuild based on requirements only
RefactoringHighImprove existing implementation
Checkpoint Pattern

After every major section, insert a checkpoint:

### Checkpoint

At this point you should have:
- [ ] A running server on port 3000
- [ ] The `/health` endpoint returning `{ "status": "ok" }`
- [ ] Server logs showing incoming requests

**If something's wrong**, see the [Troubleshooting](#troubleshooting) section below.
Troubleshooting Sections

For every section, anticipate 2-3 common errors:

### Troubleshooting

**Error: `EADDRINUSE: address already in use`**
Another process is using port 3000. Run `lsof -i :3000` to find it,
then stop it or change your port.

**Error: `Cannot find module 'express'`**
You haven't installed dependencies yet. Run `npm install` in the project root.

Phase 4: Write the Tutorial

Section Structure (for each concept)
  1. Brief intro (1-2 sentences) — what this section covers and why it matters
  2. Minimal example — complete, runnable code showing the concept
  3. Line-by-line explanation — walk through the important parts
  4. Try it — tell the reader to run the code and what to expect
  5. Extend it — optional exercise to deepen understanding
  6. Troubleshooting — common errors for this section
Writing Principles
  • Show, then explain — code first, theory second
  • Frequent validation — readers should run code every 2-3 minutes
  • Fail forward — include intentional errors to teach debugging
  • Incremental complexity — each step adds one thing to the previous
  • Copy-paste friendly — examples must work when pasted directly
Content Elements

Code blocks must:

  • Be complete and runnable (no ... elisions in critical paths)
  • Include expected output in a separate block
  • Use meaningful variable names
  • Have inline comments only where non-obvious

Explanations should:

  • Connect to real-world use cases
  • Provide the "why" behind each step
  • Use analogies to familiar concepts
  • Anticipate the reader's "but what about...?" questions
Closing Section
## Summary

You've learned how to:
- [Outcome 1 restated]
- [Outcome 2 restated]

## Next Steps

- [Natural follow-on tutorial or topic]
- [Related documentation]
- [Community resources]

Phase 5: Validate

Before publishing, test the entire tutorial path:

  1. Follow every step from a clean environment
  2. Run every code example and verify output matches
  3. Trigger every troubleshooting scenario at least once
  4. Time the tutorial — does it match the estimate?
  5. Have someone unfamiliar with the topic attempt it

Tutorial Formats

FormatDurationWhen to use
Quick Start5 minFirst contact, get running fast
Deep Dive30-60 minComprehensive single-topic exploration
Workshop SeriesMulti-partProgressive learning across sessions
CookbookVariableProblem-solution pairs, non-linear reading
Interactive Lab15-45 minHands-on environment with guided steps

Anti-Patterns

  • Introducing concepts before they are needed ("you'll use this later")
  • Showing code snippets that cannot run standalone
  • Assuming knowledge not listed in prerequisites
  • Walls of text without code breaks
  • Exercises without solutions (even collapsed/hidden ones)
  • Skipping the "why" and only showing the "how"

Comments

Markdown supported