Diataxis Documentation Framework
Complete reference for the Diataxis framework — a systematic approach to technical documentation authoring by Daniele Procida. All content sourced verbatim from diataxis.fr.
When to Use This Skill
This skill should be triggered when:
- Writing documentation: Creating new docs pages of any type
- Reviewing documentation: Checking if content is in the right place and follows the right form
- Restructuring documentation: Reorganizing existing docs into proper Diataxis categories
- Deciding content type: Determining whether something should be a tutorial, how-to, reference, or explanation
- Resolving confusion: Distinguishing tutorials from how-to guides, or reference from explanation
The Diataxis Compass
Use this decision table when you need to classify content:
| If the content... |
...and serves the user's... |
...then it belongs in... |
| informs action |
acquisition of skill |
a tutorial |
| informs action |
application of skill |
a how-to guide |
| informs cognition |
application of skill |
reference |
| informs cognition |
acquisition of skill |
explanation |
Two questions to ask:
- Action or cognition? Is this about doing something or knowing something?
- Acquisition or application? Is the user learning or working?
Full compass guidance: references/compass.md
The Four Documentation Types
Tutorials (learning-oriented)
- An experience guided by a tutor, where the learner acquires skills by doing
- Teacher holds nearly all responsibility — learner just follows directions
- Concrete steps, no choices, no branching, ruthlessly minimal explanation
- Language: "We will...", "First, do X. Now, do Y.", "Notice that...", "You have built..."
Full reference: references/tutorials.md
How-to Guides (goal-oriented)
- Directions that guide a competent user through a real-world problem
- Assumes the user already knows the basics and has a specific goal
- Can branch ("If this, do that"), addresses real-world conditions
- Language: "If you want X, do Y." Conditional imperatives.
Full reference: references/how-to-guides.md
Reference (information-oriented)
- Technical description of the machinery — austere, factual, structured like the code
- Consulted while working, not read cover-to-cover
- Neutral, objective. Describe and only describe. No teaching, no opinions.
- Language: "X does Y.", "You must use X.", lists, tables, warnings.
Full reference: references/reference.md
Explanation (understanding-oriented)
- Discursive treatment that permits reflection and deepens understanding
- Read after stepping away from work. Discusses why, provides context, weighs alternatives.
- Admits opinion and perspective. Makes connections across topics.
- Language: "The reason for X is...", "Consider...", analogies, history, alternatives.
Full reference: references/explanation.md
Critical Distinctions
The most common mistake in documentation is mixing types. Read these when boundaries are unclear:
- Tutorials vs How-to Guides:
references/tutorials-how-to.md — The single most common conflation in software documentation. Tutorials are safe, contrived, teacher-led. How-to guides are real-world, user-led, assume competence.
- Reference vs Explanation:
references/reference-explanation.md — Key test: would you consult this while working (reference) or after stepping away (explanation)?
Reference Files
All files in references/ contain the complete, unabridged content from diataxis.fr:
Getting Started
references/index.md — Overview and introduction to Diataxis
references/start-here.md — Getting started primer
references/application.md — Applying Diataxis in practice
The Four Types (read before writing any documentation)
references/tutorials.md (16K) — Complete tutorial guidance with all principles
references/how-to-guides.md (11K) — Complete how-to guide guidance
references/reference.md (6K) — Complete reference documentation guidance
references/explanation.md (7K) — Complete explanation guidance
Practical Tools
references/compass.md — The decision compass for classifying content
references/how-to-use-diataxis.md — Workflow guidance for applying the framework
Theory & Principles
references/theory.md — Theoretical foundations overview
references/foundations.md — Foundational concepts underpinning Diataxis
references/map.md — The Diataxis map and its relationships
references/quality.md (11K) — Theory of functional vs deep quality in documentation
Boundaries & Edge Cases
references/tutorials-how-to.md (14K) — Tutorials vs how-to guides (the most important distinction)
references/reference-explanation.md — Reference vs explanation
references/complex-hierarchies.md (8K) — Handling complex documentation structures
Meta
references/colophon.md — About Diataxis itself
Working with This Skill
Before Writing a Page
- Determine which Diataxis type it is using the compass above
- Read the full reference file for that type (e.g.,
references/tutorials.md)
- Follow the language patterns and structural rules for that type
- Never mix types on a single page
When Reviewing Documentation
- For each page, use the compass to verify its type
- Flag any content that mixes types (e.g., explanation inside a how-to guide)
- Check
references/tutorials-how-to.md if tutorials and how-tos seem conflated
- Check
references/reference-explanation.md if reference and explanation seem blurred
When Restructuring
- Read
references/how-to-use-diataxis.md for the overall workflow
- Read
references/complex-hierarchies.md for handling large documentation sites
- Classify every existing page using the compass
- Move misplaced content to its correct type
Notes
- All reference content is Daniele Procida's original writing from diataxis.fr — do not paraphrase when the original words apply
- The reference files are the authority. When in doubt, re-read the relevant file.
- Source: https://diataxis.fr/ — Copyright Daniele Procida
1---2name: diataxis3description: Write technical documentation following the Diataxis framework by Daniele Procida. Use when writing, reviewing, or restructuring documentation to ensure correct separation of tutorials, how-to guides, reference, and explanation.4---56# Diataxis Documentation Framework78Complete reference for the Diataxis framework — a systematic approach to technical documentation authoring by Daniele Procida. All content sourced verbatim from [diataxis.fr](https://diataxis.fr/).910## When to Use This Skill1112This skill should be triggered when:1314- **Writing documentation**: Creating new docs pages of any type15- **Reviewing documentation**: Checking if content is in the right place and follows the right form16- **Restructuring documentation**: Reorganizing existing docs into proper Diataxis categories17- **Deciding content type**: Determining whether something should be a tutorial, how-to, reference, or explanation18- **Resolving confusion**: Distinguishing tutorials from how-to guides, or reference from explanation1920## The Diataxis Compass2122Use this decision table when you need to classify content:2324| If the content... | ...and serves the user's... | ...then it belongs in... |25| --------------------- | --------------------------- | ------------------------ |26| informs **action** | **acquisition** of skill | a **tutorial** |27| informs **action** | **application** of skill | a **how-to guide** |28| informs **cognition** | **application** of skill | **reference** |29| informs **cognition** | **acquisition** of skill | **explanation** |3031Two questions to ask:32331. **Action or cognition?** Is this about _doing_ something or _knowing_ something?342. **Acquisition or application?** Is the user _learning_ or _working_?3536Full compass guidance: `references/compass.md`3738## The Four Documentation Types3940### Tutorials (learning-oriented)4142- An **experience** guided by a tutor, where the learner acquires skills by doing43- Teacher holds nearly all responsibility — learner just follows directions44- Concrete steps, no choices, no branching, ruthlessly minimal explanation45- Language: "We will...", "First, do X. Now, do Y.", "Notice that...", "You have built..."4647**Full reference**: `references/tutorials.md`4849### How-to Guides (goal-oriented)5051- **Directions** that guide a competent user through a real-world problem52- Assumes the user already knows the basics and has a specific goal53- Can branch ("If this, do that"), addresses real-world conditions54- Language: "If you want X, do Y." Conditional imperatives.5556**Full reference**: `references/how-to-guides.md`5758### Reference (information-oriented)5960- **Technical description** of the machinery — austere, factual, structured like the code61- Consulted while working, not read cover-to-cover62- Neutral, objective. Describe and only describe. No teaching, no opinions.63- Language: "X does Y.", "You must use X.", lists, tables, warnings.6465**Full reference**: `references/reference.md`6667### Explanation (understanding-oriented)6869- **Discursive treatment** that permits reflection and deepens understanding70- Read after stepping away from work. Discusses why, provides context, weighs alternatives.71- Admits opinion and perspective. Makes connections across topics.72- Language: "The reason for X is...", "Consider...", analogies, history, alternatives.7374**Full reference**: `references/explanation.md`7576## Critical Distinctions7778The most common mistake in documentation is mixing types. Read these when boundaries are unclear:7980- **Tutorials vs How-to Guides**: `references/tutorials-how-to.md` — The single most common conflation in software documentation. Tutorials are safe, contrived, teacher-led. How-to guides are real-world, user-led, assume competence.81- **Reference vs Explanation**: `references/reference-explanation.md` — Key test: would you consult this _while working_ (reference) or _after stepping away_ (explanation)?8283## Reference Files8485All files in `references/` contain the complete, unabridged content from diataxis.fr:8687### Getting Started8889- **`references/index.md`** — Overview and introduction to Diataxis90- **`references/start-here.md`** — Getting started primer91- **`references/application.md`** — Applying Diataxis in practice9293### The Four Types (read before writing any documentation)9495- **`references/tutorials.md`** (16K) — Complete tutorial guidance with all principles96- **`references/how-to-guides.md`** (11K) — Complete how-to guide guidance97- **`references/reference.md`** (6K) — Complete reference documentation guidance98- **`references/explanation.md`** (7K) — Complete explanation guidance99100### Practical Tools101102- **`references/compass.md`** — The decision compass for classifying content103- **`references/how-to-use-diataxis.md`** — Workflow guidance for applying the framework104105### Theory & Principles106107- **`references/theory.md`** — Theoretical foundations overview108- **`references/foundations.md`** — Foundational concepts underpinning Diataxis109- **`references/map.md`** — The Diataxis map and its relationships110- **`references/quality.md`** (11K) — Theory of functional vs deep quality in documentation111112### Boundaries & Edge Cases113114- **`references/tutorials-how-to.md`** (14K) — Tutorials vs how-to guides (the most important distinction)115- **`references/reference-explanation.md`** — Reference vs explanation116- **`references/complex-hierarchies.md`** (8K) — Handling complex documentation structures117118### Meta119120- **`references/colophon.md`** — About Diataxis itself121122## Working with This Skill123124### Before Writing a Page1251261. Determine which Diataxis type it is using the compass above1272. Read the full reference file for that type (e.g., `references/tutorials.md`)1283. Follow the language patterns and structural rules for that type1294. **Never mix types on a single page**130131### When Reviewing Documentation1321331. For each page, use the compass to verify its type1342. Flag any content that mixes types (e.g., explanation inside a how-to guide)1353. Check `references/tutorials-how-to.md` if tutorials and how-tos seem conflated1364. Check `references/reference-explanation.md` if reference and explanation seem blurred137138### When Restructuring1391401. Read `references/how-to-use-diataxis.md` for the overall workflow1412. Read `references/complex-hierarchies.md` for handling large documentation sites1423. Classify every existing page using the compass1434. Move misplaced content to its correct type144145## Notes146147- All reference content is Daniele Procida's original writing from diataxis.fr — do not paraphrase when the original words apply148- The reference files are the authority. When in doubt, re-read the relevant file.149- Source: https://diataxis.fr/ — Copyright Daniele Procida