Use this skill when creating structured educational content. Provides templates for chapters, exercises, projects, labs, slides, and assessments. Trigger phrases include "content template", "chapter structure", "exercise format", "lab template", "slide template", "quiz format".
/plugin marketplace add NathanJGaul/plugins/plugin install dev-course-builder@njg-marketplaceThis skill inherits all available tools. When active, it can use any tool Claude has access to.
Structural templates for different types of programming educational content.
# Chapter [X]: [Topic Name]
## Learning Objectives
By the end of this chapter, you will be able to:
- [Objective 1 - action verb + specific skill]
- [Objective 2]
- [Objective 3]
## Prerequisites
Before starting this chapter, you should understand:
- [Prerequisite 1]
- [Prerequisite 2]
## Introduction
[1-2 paragraphs motivating the topic]
- Why does a developer need to know this?
- What problems does it solve?
- How does it connect to previous chapters?
## [Section 1: Core Concept]
### The Problem
[What situation or challenge leads us to need this concept?]
### A First Look
```[language]
// Working code example showing the concept in action
Output:
[Actual output from running the code]
[Break down the code piece by piece]
// Code that demonstrates a common error
Error:
[Compiler or runtime error message]
Why this happens: [Explanation]
The fix:
// Corrected code
[Build on the basics with more detail]
[Real-world use case with full implementation]
[Clear problem statement]
Starter code:
// Scaffolded code for student to complete
Expected behavior:
[Sample input/output or test cases]
[Problem requiring synthesis of concepts]
[Open-ended problem for advanced students]
[Preview of next chapter and how it builds on this]
## Coding Exercise Template
```markdown
# Exercise: [Name]
**Difficulty:** [Beginner/Intermediate/Advanced]
**Estimated Time:** [X minutes]
**Concepts Practiced:** [Concept 1, Concept 2]
## Problem Statement
[Clear, unambiguous description of what to build]
## Requirements
1. [Specific requirement 1]
2. [Specific requirement 2]
3. [Specific requirement 3]
## Starter Code
```[language]
// Provided structure for student to complete
// TODO comments indicate where students should write code
// Tests to verify the solution
// Students can run these to check their work
Expected Output:
Test 1: PASS
Test 2: PASS
...
// Complete working solution
Explanation: [Why this approach works]
</details>For students who finish early:
## Project Template
```markdown
# Project: [Name]
**Duration:** [X hours/days]
**Difficulty:** [Intermediate/Advanced]
**Technologies:** [Language, libraries, tools]
## Overview
[1-2 paragraphs describing what students will build]
## Learning Goals
By completing this project, you will:
- [Goal 1]
- [Goal 2]
- [Goal 3]
## Project Specification
### Requirements
**Core Features (Required):**
1. [Feature 1]
2. [Feature 2]
3. [Feature 3]
**Stretch Goals (Optional):**
1. [Enhancement 1]
2. [Enhancement 2]
### Technical Constraints
- [Constraint 1 - e.g., must use standard library only]
- [Constraint 2 - e.g., no external dependencies]
## Getting Started
### Step 1: Project Setup
[Instructions for creating the project structure]
```bash
# Commands to set up the project
[Guidance for first working piece]
[Building on the first piece]
[Bringing pieces together]
// Test cases or testing instructions
| Criterion | Weight | Description |
|---|---|---|
| Correctness | X% | Code works as specified |
| Code Quality | X% | Readable, well-organized |
| Testing | X% | Adequate test coverage |
| Documentation | X% | Clear comments and README |
## Lab/Workshop Template
```markdown
# Lab [X]: [Topic Name]
**Duration:** [X minutes/hours]
**Format:** [Individual/Pair/Group]
**Environment:** [IDE, online compiler, etc.]
## Learning Objectives
- [Objective 1]
- [Objective 2]
---
## Part A: Guided Practice ([X minutes])
### Setup
```[language]
// Initial code to start with
[Explanation of what to do]
// Code to write or modify
Try it: Run the code and observe [specific output]
[Next step in the progression]
At this point, your code should:
Work on these challenges independently or with a partner.
[Problem statement]
[Problem statement building on Challenge 1]
[More complex integration challenge]
[For students who finish early]
## Slides Template (Quarto RevealJS)
```markdown
---
title: "[Topic Name]"
author: "[Instructor Name]"
format:
revealjs:
theme: default
code-line-numbers: true
highlight-style: github
---
## Learning Objectives
- Objective 1
- Objective 2
- Objective 3
::: notes
Set expectations for what students will learn
:::
---
## Why This Matters
[Real-world motivation]
**In practice:** [Concrete example from industry]
::: notes
Hook students with relevant context
:::
---
## [Concept]: First Look
```{.[language]}
// Simple example code
::: {.fragment} Output:
[What this produces]
:::
::: notes Walk through each line :::
:::: {.columns} ::: {.column width="50%"} Step 1:
// First piece
::: ::: {.column width="50%"} Step 2:
// Adding to it
::: ::::
::: notes Incremental code building :::
// Code with a bug
::: {.fragment} Error:
[Error message]
:::
::: {.fragment} How to fix it: [Explanation] :::
Given this code:
// Code to analyze
Question: What will this output?
::: {.fragment} Answer: [Revealed answer] :::
::: notes Give students 1-2 minutes to think :::
Let's build [feature] together.
[Space for live demonstration]
::: notes Key points to hit during live coding:
Next time: [Preview]
[Contact info or office hours]
## Quiz/Assessment Template
```markdown
# Assessment: [Topic Name]
**Time Limit:** [X minutes]
**Open/Closed:** [Book, notes, IDE?]
**Total Points:** [XX]
---
## Part 1: Code Reading ([X points])
### Question 1 ([X points])
What does the following code output?
```[language]
// Code to trace
Answer: ____________
This code has a bug. Identify it and explain how to fix it.
// Buggy code
Bug: ____________ Fix: ____________
Write a function that [specification].
Function signature:
// Provided signature
Your code:
// Space for answer
Implement [more complex task].
Requirements:
Explain why [concept] is important in [context].
Compare and contrast [approach A] and [approach B].
[Detailed answers and grading rubric]
## Usage Guidelines
### When to Use Each Template
- **Chapter**: Comprehensive coverage of a topic for self-study or reference
- **Coding Exercise**: Focused practice on specific skills
- **Project**: Larger, integrative work combining multiple concepts
- **Lab/Workshop**: Structured in-class hands-on session
- **Slides**: Support for lecture or live demonstration
- **Quiz/Assessment**: Evaluate student understanding
### Customization
These templates should be adapted based on:
- Target audience experience level
- Programming language and toolchain
- Course philosophy (framework vs. no-framework)
- Time available
- Prerequisites
- Learning environment (IDE, online, etc.)
Always reference the specific course profile for customization guidance.
This skill should be used when the user asks to "create a slash command", "add a command", "write a custom command", "define command arguments", "use command frontmatter", "organize commands", "create command with file references", "interactive command", "use AskUserQuestion in command", or needs guidance on slash command structure, YAML frontmatter fields, dynamic arguments, bash execution in commands, user interaction patterns, or command development best practices for Claude Code.
This skill should be used when the user asks to "create an agent", "add an agent", "write a subagent", "agent frontmatter", "when to use description", "agent examples", "agent tools", "agent colors", "autonomous agent", or needs guidance on agent structure, system prompts, triggering conditions, or agent development best practices for Claude Code plugins.
This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.