technical-tutorials
关于
This skill generates step-by-step technical tutorials and quickstart guides when triggered by phrases like "tutorial" or "walkthrough." It creates practical, working guides that handle prerequisites, progressive complexity, and troubleshooting. It requires prior audience context to tailor content to the correct developer skill level and environment.
快速安装
Claude Code
推荐npx skills add jonathimer/devmarketing-skills -a claude-code/plugin add https://github.com/jonathimer/devmarketing-skillsgit clone https://github.com/jonathimer/devmarketing-skills.git ~/.claude/skills/technical-tutorials在 Claude Code 中复制并粘贴此命令以安装该技能
技能文档
Technical Tutorials
This skill helps you create step-by-step tutorials that actually work. Covers prerequisite handling, progressive complexity, troubleshooting sections, and creating those satisfying "it works!" moments.
Before You Start
Load your audience context first. Read .agents/developer-audience-context.md to understand:
- Developer skill level (beginner, intermediate, senior)
- Tech stack familiarity (what can you assume they know?)
- Environment (macOS, Linux, Windows, cloud)
- Why they're learning (job, side project, curiosity)
If the context file doesn't exist, run the developer-audience-context skill first.
Tutorial Types
| Type | Length | Purpose | Example |
|---|---|---|---|
| Quickstart | 5-10 min | First success ASAP | "Make your first API call" |
| Tutorial | 20-45 min | Learn a concept deeply | "Build a REST API with Node.js" |
| Workshop | 1-3 hours | Comprehensive project | "Build a full-stack app" |
| Code walkthrough | Varies | Explain existing code | "Understanding our SDK architecture" |
The Tutorial Structure
Anatomy of a Great Tutorial
1. Title & Meta
- What you'll build
- Time estimate
- Prerequisites
2. Overview
- What you'll learn
- Final result preview
3. Prerequisites Check
- Environment setup
- Verification commands
4. The Build (Progressive Steps)
- Step 1: Simplest foundation
- Step 2: Add one concept
- Step 3: Add complexity
- [Checkpoint: "It works!" moment]
- Step 4: Continue building
- ...
- [Final checkpoint]
5. What You Built
- Recap
- Complete code
6. Troubleshooting
- Common errors
- Debugging tips
7. Next Steps
- Where to go from here
- Related tutorials
Prerequisites Handling
The Prerequisites Section
Be explicit. Don't make developers guess what they need.
## Prerequisites
Before starting, make sure you have:
| Requirement | Version | Check Command |
|-------------|---------|---------------|
| Node.js | 18+ | `node --version` |
| npm | 9+ | `npm --version` |
| Git | Any | `git --version` |
You should also be comfortable with:
- Basic JavaScript (variables, functions, async/await)
- Command line basics (cd, mkdir, running commands)
- REST API concepts (HTTP methods, JSON)
**New to any of these?** Check out [link to prerequisite tutorial].
Environment Setup Section
Make setup foolproof:
## Setting Up Your Environment
### 1. Create Project Directory
\`\`\`bash
mkdir my-awesome-project
cd my-awesome-project
\`\`\`
### 2. Initialize the Project
\`\`\`bash
npm init -y
\`\`\`
You should see output like:
\`\`\`json
{
"name": "my-awesome-project",
"version": "1.0.0",
...
}
\`\`\`
### 3. Install Dependencies
\`\`\`bash
npm install express dotenv
\`\`\`
### 4. Verify Installation
\`\`\`bash
node -e "require('express'); console.log('Express installed!')"
\`\`\`
Expected output: `Express installed!`
Progressive Complexity
The Layer Cake Approach
Build up in understandable layers:
| Layer | What It Does | Example |
|---|---|---|
| 1. Skeleton | Minimum viable code that runs | "Hello World" server |
| 2. Core feature | Primary functionality | Add one API endpoint |
| 3. Real data | Replace hardcoded values | Connect to database |
| 4. Error handling | Production-ready patterns | Add try/catch, validation |
| 5. Polish | Nice-to-haves | Logging, config, tests |
Show Progress, Not Perfection
Wrong approach (overwhelming):
// Here's the complete file with everything
const express = require('express');
const { Pool } = require('pg');
const helmet = require('helmet');
const rateLimit = require('express-rate-limit');
const winston = require('winston');
// ... 200 more lines
Right approach (progressive):
Step 1: Basic server
const express = require('express');
const app = express();
app.get('/', (req, res) => {
res.send('Hello World!');
});
app.listen(3000, () => {
console.log('Server running on http://localhost:3000');
});
Step 2: Add your first route
// Add this below your existing route
app.get('/api/users', (req, res) => {
res.json([{ id: 1, name: 'Jane' }]);
});
Copy-Paste Friendly Code
The Copy-Paste Checklist
Every code block must pass these tests:
| Test | How to Verify |
|---|---|
| Runs standalone | Copy into new file, execute, it works |
| Imports included | All require/import statements present |
| No undefined variables | No references to code from other steps without showing it |
| Environment agnostic | Works on Mac/Linux/Windows |
| Comments explain why | Not what (code shows what), but why |
Code Block Patterns
File context is critical:
// server.js - Add this to your existing file
const rateLimit = require('express-rate-limit');
// Add this BEFORE your routes
const limiter = rateLimit({
windowMs: 15 * 60 * 1000, // 15 minutes
max: 100 // limit each IP to 100 requests per window
});
app.use(limiter);
Show file structure:
my-project/
├── src/
│ ├── index.js ← You're editing this
│ ├── routes/
│ │ └── users.js
│ └── db/
│ └── connection.js
├── package.json
└── .env
Highlight changes in context:
// src/index.js
const express = require('express');
const app = express();
// ✅ ADD THIS: Import your new route
const userRoutes = require('./routes/users');
// ✅ ADD THIS: Use the route
app.use('/api/users', userRoutes);
app.listen(3000);
"It Works!" Moments
Checkpoints Create Motivation
Every 3-5 steps, give developers a win:
## Checkpoint: Test Your API
Let's make sure everything works before continuing.
**Start your server:**
\`\`\`bash
node server.js
\`\`\`
**In a new terminal, test the endpoint:**
\`\`\`bash
curl http://localhost:3000/api/users
\`\`\`
**You should see:**
\`\`\`json
[{"id": 1, "name": "Jane"}]
\`\`\`
🎉 **It works!** Your API is returning data.
If you don't see this output, check the [Troubleshooting](#troubleshooting) section.
Visual Confirmation
When possible, show what success looks like:
| Output Type | How to Show |
|---|---|
| Terminal output | Code block with expected text |
| Browser result | Screenshot or description |
| API response | Formatted JSON |
| Logs | Code block with log output |
Troubleshooting Sections
Common Error Template
## Troubleshooting
### "Error: Cannot find module 'express'"
**Cause:** Dependencies weren't installed.
**Fix:**
\`\`\`bash
npm install
\`\`\`
---
### "EADDRINUSE: address already in use :::3000"
**Cause:** Another process is using port 3000.
**Fix (macOS/Linux):**
\`\`\`bash
# Find the process
lsof -i :3000
# Kill it (replace PID with actual number)
kill -9 PID
\`\`\`
**Or use a different port:**
\`\`\`javascript
app.listen(process.env.PORT || 3001);
\`\`\`
---
### "SyntaxError: Unexpected token"
**Cause:** Likely a typo or missing bracket.
**Debug steps:**
1. Check the line number in the error
2. Look for missing `,`, `}`, or `)`
3. Verify all strings are closed with matching quotes
Proactive Error Prevention
Add warnings before common pitfalls:
⚠️ **Windows users:** Use `set` instead of `export`:
\`\`\`bash
# macOS/Linux
export API_KEY=your_key
# Windows Command Prompt
set API_KEY=your_key
# Windows PowerShell
$env:API_KEY="your_key"
\`\`\`
Tutorial Templates
Quickstart Template (5-10 minutes)
# [Product] Quickstart: [What You'll Do] in 5 Minutes
Get [specific outcome] in under 5 minutes.
## Prerequisites
- [Requirement 1]
- [Requirement 2]
## Step 1: Install
\`\`\`bash
npm install your-package
\`\`\`
## Step 2: Configure
Create a `.env` file:
\`\`\`
API_KEY=your_key_here
\`\`\`
## Step 3: Write Code
Create `index.js`:
\`\`\`javascript
// Complete, working code
\`\`\`
## Step 4: Run It
\`\`\`bash
node index.js
\`\`\`
Expected output:
\`\`\`
[Output here]
\`\`\`
## 🎉 You Did It!
You just [accomplished thing].
**Next steps:**
- [Link to full tutorial]
- [Link to API docs]
- [Link to examples repo]
Full Tutorial Template (20-45 minutes)
# Build a [Thing] with [Technology]
Learn how to [outcome] by building [specific project].
| | |
|---|---|
| **Time** | 30 minutes |
| **Level** | Intermediate |
| **Prerequisites** | Node.js 18+, basic JavaScript |
## What You'll Build
[Screenshot or diagram of final result]
By the end, you'll have:
- ✅ [Capability 1]
- ✅ [Capability 2]
- ✅ [Capability 3]
## Prerequisites
### Required Software
| Tool | Version | Verify |
|------|---------|--------|
| Node.js | 18+ | `node -v` |
### Required Knowledge
- [Concept 1] — [link to learn]
- [Concept 2] — [link to learn]
## Step 1: Project Setup
[Setup instructions with verification]
**Checkpoint:** You should see `[expected output]`.
## Step 2: [First Feature]
[Instructions]
**Checkpoint:** Test with `[command]`.
## Step 3: [Second Feature]
[Instructions]
## Step 4: [Third Feature]
[Instructions]
**Checkpoint:** Your app should now [do thing].
## Complete Code
Here's everything together:
\`\`\`javascript
// Full final code
\`\`\`
## Troubleshooting
### [Common Error 1]
[Solution]
### [Common Error 2]
[Solution]
## What You Learned
- [Key concept 1]
- [Key concept 2]
- [Key concept 3]
## Next Steps
- **Go deeper:** [Link to advanced tutorial]
- **Explore:** [Link to related feature]
- **Get help:** [Link to Discord/community]
Quality Checklist
Before publishing, verify:
Code Quality
- Every code block runs without modification
- All imports/requires are included
- Expected output is shown
- Error handling is included
- Environment variables use
.envpattern
Structure Quality
- Prerequisites are explicit
- Time estimate is accurate (test it!)
- Checkpoints every 3-5 steps
- Final complete code is provided
- Troubleshooting covers likely errors
Accessibility
- Works on Mac, Linux, AND Windows
- Commands work in bash/zsh/PowerShell
- File paths use correct separators
- No assumptions about installed tools
Tools
| Tool | Use Case |
|---|---|
| Octolens | Find common questions and errors developers encounter. Monitor Stack Overflow and GitHub issues for troubleshooting content. |
| Replit/CodeSandbox | Embed runnable examples |
| Carbon/Ray.so | Beautiful code screenshots |
| Excalidraw | Architecture diagrams |
| Terminalizer | Record terminal sessions |
| Loom | Quick video supplements |
Related Skills
developer-audience-context— Understand skill level and environmentdevrel-content— General technical writing principlesdeveloper-onboarding— Optimize time to first successdeveloper-seo— Get tutorials found via search
GitHub 仓库
相关推荐技能
content-collections
元Content Collections 是一个 TypeScript 优先的构建工具,可将本地 Markdown/MDX 文件转换为类型安全的数据集合。它专为构建博客、文档站和内容密集型 Vite+React 应用而设计,提供基于 Zod 的自动模式验证。该工具涵盖从 Vite 插件配置、MDX 编译到生产环境部署的完整工作流。
polymarket
元这个Claude Skill为开发者提供完整的Polymarket预测市场开发支持,涵盖API调用、交易执行和市场数据分析。关键特性包括实时WebSocket数据流,可监控实时交易、订单和市场动态。开发者可用它构建预测市场应用、实施交易策略并集成实时市场预测功能。
creating-opencode-plugins
元该Skill帮助开发者创建OpenCode插件,用于接入命令、文件、LSP等25+种事件。它提供了插件结构、事件API规范和JavaScript/TypeScript实现模式,适合需要拦截操作、扩展功能或自定义事件处理的场景。开发者可通过它快速构建响应式模块来增强OpenCode AI助手的能力。
sglang
元SGLang是一个专为LLM设计的高性能推理框架,特别适用于需要结构化输出的场景。它通过RadixAttention前缀缓存技术,在处理JSON、正则表达式、工具调用等具有重复前缀的复杂工作流时,能实现极速生成。如果你正在构建智能体或多轮对话系统,并追求远超vLLM的推理性能,SGLang是理想选择。
