Documentation Standards
Templates, workflows, and checklists for creating documentation following Diataxis principles.
When to Use This Skill
Use when:
- •Creating any type of documentation
- •Need template for specific doc type
- •Want checklist to verify doc completeness
- •documentation-writer agent needs HOW guidance
Diataxis Framework Quick Reference
| Quadrant | Purpose | Audience | Focus |
|---|---|---|---|
| Tutorial | Learning | Beginners | Hand-holding, confidence building |
| How-to | Goal completion | Practitioners | Steps to achieve specific goal |
| Reference | Information | Any level | Exhaustive, accurate lookup |
| Explanation | Understanding | Curious users | WHY, context, decisions |
Documentation Types Overview
| Type | Diataxis | When to Use | Guidelines | Template |
|---|---|---|---|---|
| README (root) | How-to | Project entry point | references/readme-guidelines.md | examples/readme-root-template.md |
| README (module) | Reference + How-to | Module documentation | references/readme-guidelines.md | examples/readme-module-template.md |
| Quick Start | How-to | Fast path to working | references/quickstart-guidelines.md | examples/quickstart-template.md |
| CONTRIBUTING | How-to | Guide contributors | references/contributing-guidelines.md | examples/contributing-template.md |
| API docs | Reference | Endpoint documentation | references/api-docs-guidelines.md | examples/api-docs-template.md |
| Tutorial | Tutorial | Onboarding, learning | references/tutorial-guidelines.md | examples/tutorial-template.md |
| How-to guide | How-to | Specific task completion | references/howto-guidelines.md | examples/howto-template.md |
| Reference | Reference | Exhaustive information | references/reference-guidelines.md | examples/reference-docs-template.md |
| Explanation/ADR | Explanation | Architecture decisions | references/adr-guidelines.md | examples/explanation-adr-template.md |
Quick Decision Tree
What does the reader need? ├─ Learn something new → Tutorial ├─ Accomplish a specific task → How-to ├─ Look up information → Reference └─ Understand why/context → Explanation
Type Summaries and Checklists
Type 1: README (Root Project)
Diataxis: How-to (goal: get project running)
Required Sections:
- •Title + One-liner
- •Quick Start (fastest path to working)
- •Installation (step-by-step)
- •Usage (basic examples)
- •License
Checklist:
- • Can someone get running in <5 minutes?
- • Prerequisites clearly stated (checklist format)?
- • Installation steps verified to work?
- • Basic usage example included?
Guidelines: references/readme-guidelines.md
Template: examples/readme-root-template.md
Quick Start Guide
Diataxis: How-to (goal: get running FAST)
When to Create: If README Quick Start section > 10 lines
Required Sections:
- •Time estimate upfront (with emoji title)
- •Prerequisites (checklist format with
- [ ]) - •Steps with time per section and expected output
- •Verification that it works
- •Troubleshooting (top 2-3 issues)
- •"Need Help?" section with resources
Checklist:
- • Time-boxed (stated upfront)?
- • Every command copy-paste ready?
- • Expected output shown for each step?
- • Ends with verifiable working state?
- • "Need Help?" section instead of "Next Steps"?
Guidelines: references/quickstart-guidelines.md
Template: examples/quickstart-template.md
CONTRIBUTING.md
Diataxis: How-to (goal: enable contributions)
Required Sections:
- •How to Contribute (overview)
- •Reporting Bugs
- •Development Setup (with time estimate)
- •Pull Request Process
- •Code of Conduct (or link)
Checklist:
- • Welcoming tone?
- • Setup instructions tested?
- • PR process clear?
- • Response timeline mentioned?
Guidelines: references/contributing-guidelines.md
Template: examples/contributing-template.md
Type 2: README (Module/Library)
Diataxis: Reference + How-to hybrid
Required Sections:
- •Purpose - What problem does this module solve?
- •API - Functions/classes exported
- •Usage Examples - Common use cases
- •Dependencies - What this module depends on
Checklist:
- • Purpose clearly stated?
- • All exports documented?
- • Examples for main use cases?
Guidelines: references/readme-guidelines.md
Template: examples/readme-module-template.md
Type 3: API Documentation
Diataxis: Reference (exhaustive, accurate)
Required Sections:
- •Endpoint - Method + Path
- •Authentication - Requirements
- •Request - Headers, params, body
- •Response - Success + all error cases
- •Examples - curl/code
Checklist:
- • All parameters documented with types?
- • All response codes covered?
- • Request/response examples provided?
- • Authentication requirements stated?
Guidelines: references/api-docs-guidelines.md
Template: examples/api-docs-template.md
Type 4: Tutorial
Diataxis: Tutorial (learning-oriented)
Core Principles:
- •Hand-holding: Every step explicit
- •Confidence building: Small wins frequently
- •Beginner-friendly: Assume nothing
Required Sections:
- •What you'll learn - Clear outcomes
- •Time estimate - Total and per section
- •Prerequisites - Checklist format
- •Steps - Numbered, explicit with checkpoints
- •Verification - How to know it worked
- •Troubleshooting - Common issues
- •Need Help? - Resources and next steps
Checklist:
- • Can a complete beginner follow?
- • Each step has verification?
- • No assumed knowledge?
- • Time estimates included?
Guidelines: references/tutorial-guidelines.md
Template: examples/tutorial-template.md
Type 5: How-to Guide
Diataxis: How-to (goal-oriented)
Core Principles:
- •Goal-focused: Solve specific problem
- •Assumes knowledge: Reader knows basics
- •Concise: Minimum steps to goal
Required Sections:
- •Goal - What reader will accomplish
- •Prerequisites - Required knowledge/setup
- •Steps - Direct path to goal
- •Troubleshooting - Common issues
Checklist:
- • Goal clearly stated?
- • Steps minimal but complete?
- • No unnecessary explanation?
Guidelines: references/howto-guidelines.md
Template: examples/howto-template.md
Type 6: Reference Documentation
Diataxis: Reference (information-oriented)
Core Principles:
- •Exhaustive: All options documented
- •Accurate: 100% correct, verified against code
- •Consistent: Same format throughout
Required Sections:
- •Overview - What this covers
- •Index/TOC - Navigation
- •Entries - Consistent format per item
- •Cross-references - Links to related
Checklist:
- • Every option/parameter documented?
- • Format consistent throughout?
- • Verified against actual code?
- • Types/defaults specified?
Guidelines: references/reference-guidelines.md
Template: examples/reference-docs-template.md
Type 7: Explanation / ADR
Diataxis: Explanation (understanding-oriented)
Core Principles:
- •WHY-focused: Context and reasoning
- •Long half-life: Stays relevant over time
- •Contextual: Background and history
Required Sections (ADR Format):
- •Title - Decision being documented
- •Status - Proposed/Accepted/Deprecated
- •Context - Why decision was needed
- •Decision - What was decided
- •Alternatives - Options considered with pros/cons
- •Consequences - Trade-offs (positive AND negative)
Checklist:
- • Context explains WHY decision was needed?
- • Alternatives considered documented?
- • Trade-offs clearly stated?
- • Consequences (good AND bad) listed?
Guidelines: references/adr-guidelines.md
Template: examples/explanation-adr-template.md
Process: Choosing the Right Type
Step 1: Identify the Reader
Who is blocked without this doc?
- •New user → Tutorial or README
- •Developer doing task → How-to
- •Developer looking up info → Reference
- •Anyone asking "why" → Explanation
Step 2: Identify the Need
What do they need?
- •Learn → Tutorial
- •Do → How-to
- •Know → Reference
- •Understand → Explanation
Step 3: Get Guidelines and Template
- •Consult the guidelines file for rules and tips
- •Use the template file as a starting point
Step 4: Verify
Use the checklist for that doc type.
Anti-Patterns
- •Super-documents: Mixing all types in one doc
- •Tutorial as Reference: Exhaustive details in learning context
- •Reference without verification: Claims not traced to code
- •Explanation without context: WHY without background
- •How-to with too much explanation: Should be direct
- •"Next Steps" instead of "Need Help?": Less actionable
File Structure
documentation-standards/
├── SKILL.md # This file - overview and checklists
├── references/ # Guidelines and rules for each doc type
│ ├── quickstart-guidelines.md
│ ├── contributing-guidelines.md
│ ├── readme-guidelines.md
│ ├── api-docs-guidelines.md
│ ├── tutorial-guidelines.md
│ ├── howto-guidelines.md
│ ├── reference-guidelines.md
│ └── adr-guidelines.md
└── examples/ # Concrete templates and working samples
├── quickstart-template.md
├── contributing-template.md
├── readme-root-template.md
├── readme-module-template.md
├── api-docs-template.md
├── tutorial-template.md
├── howto-template.md
├── reference-docs-template.md
├── explanation-adr-template.md
├── good-readme.md # Working example
├── good-api-doc.md # Working example
└── good-adr.md # Working example
All documentation should be accurate, minimal, and serve a single Diataxis purpose.