TYPO3 Documentation Skill
Create and maintain TYPO3 extension documentation following official docs.typo3.org standards.
Core Workflow
- Run extraction first to identify documentation gaps:
scripts/extract-all.sh /path/to/extension
scripts/analyze-docs.sh /path/to/extension
- Consult the appropriate reference file for the task
- Use TYPO3-specific directives, not plain text
- Validate:
scripts/validate_docs.sh /path/to/extension
- Render:
scripts/render_docs.sh /path/to/extension
Critical: When the user asks to "show docs", render and display HTML output, not raw RST.
Element Selection Guide
| Content Type |
Directive |
| Complete code |
literalinclude (preferred over code-block) |
| Short snippets |
code-block with :caption: |
| Config options |
confval with :name:, :type:, :default: |
| PHP API |
php:method:: -- use :returntype: for nullable/union types |
| Notices |
note, tip, warning, important |
| Feature grids |
card-grid with stretched-link in footer |
| Alternatives |
tabs (synchronized) |
| Screenshots |
figure with :zoom: lightbox :class: with-border with-shadow |
Critical Rules
- UTF-8, 4-space indent, 80 char lines, LF
- CamelCase files, sentence case headings
- Permalink anchors (
.. _label:) before every heading
- Index.rst in every subdirectory
- PNG screenshots with
:alt: and :zoom: lightbox
- .editorconfig in
Documentation/
- Screenshots MANDATORY for backend modules, config, workflows
- Max 250 lines per RST -- split with
toctree
- No
mailto: -- use GitHub Issues/Discussions
- PHP domain: no
?Type/Type|null in php:method::; use :returntype:
Code Example Validation
Cross-reference code examples against extension source:
grep method names in Classes/, compare CLI arguments against configure(),
verify API signatures match. See references/extraction-patterns.md.
Pre-Commit Checklist
.editorconfig in Documentation/, Index.rst in every directory
- 4-space indent, no tabs, max 80 chars
- Code blocks have
:caption:, inline code uses proper roles
- Screenshots exist with
:alt: and :zoom: lightbox
scripts/validate_docs.sh passes, render has no warnings
- README and Documentation/ are synchronized
References
references/file-structure.md -- directory layout, naming conventions
references/guides-xml.md -- build configuration, interlink settings
references/coding-guidelines.md -- .editorconfig, indentation rules
references/rst-syntax.md -- headings, list punctuation, doc-review pitfalls
references/text-roles-inline-code.md -- :php:, :file:, :guilabel:, :ref:
references/code-structure-elements.md -- code blocks, confval, PHP domain
references/typo3-directives.md -- confval, versionadded, deprecated
references/content-directives.md -- accordion, tabs, card-grid
references/screenshots.md -- image requirements, figure directives
references/rendering.md -- Docker commands, live preview
references/intercept-deployment.md -- webhook, build triggers
references/asset-templates-guide.md -- templates, screenshot workflow
references/architecture-decision-records.md -- ADR patterns
references/documentation-coverage-analysis.md -- coverage scoring
references/scripts-guide.md -- script options
references/typo3-extension-architecture.md -- extension layout
Credits & Attribution
This skill is based on the excellent work by
Netresearch DTT GmbH.
Original repository: https://github.com/netresearch/typo3-docs-skill
Copyright (c) Netresearch DTT GmbH — Methodology and best practices (MIT / CC-BY-SA-4.0)
Special thanks to Netresearch DTT GmbH for their generous open-source contributions to the TYPO3 community, which helped shape this skill collection.
Adapted by webconsulting.at for this skill collection
1---2name: typo3-docs3description: Use when creating, editing, or reviewing TYPO3 extension documentation (Documentation/*.rst, guides.xml, README.md, XLF translations), rendering docs with Docker, using TYPO3 RST directives, adding screenshots, deploying to docs.typo3.org, improve docs, fix documentation, or XLIFF 2-space indentation (TYPO3 v14+).4---56# TYPO3 Documentation Skill78Create and maintain TYPO3 extension documentation following official docs.typo3.org standards.910## Core Workflow11121. **Run extraction first** to identify documentation gaps:13 ```bash14 scripts/extract-all.sh /path/to/extension15 scripts/analyze-docs.sh /path/to/extension16 ```172. Consult the appropriate reference file for the task183. Use TYPO3-specific directives, not plain text194. Validate: `scripts/validate_docs.sh /path/to/extension`205. Render: `scripts/render_docs.sh /path/to/extension`2122> **Critical**: When the user asks to "show docs", render and display HTML output, not raw RST.2324## Element Selection Guide2526| Content Type | Directive |27|--------------|-----------|28| Complete code | `literalinclude` (preferred over `code-block`) |29| Short snippets | `code-block` with `:caption:` |30| Config options | `confval` with `:name:`, `:type:`, `:default:` |31| PHP API | `php:method::` -- use `:returntype:` for nullable/union types |32| Notices | `note`, `tip`, `warning`, `important` |33| Feature grids | `card-grid` with `stretched-link` in footer |34| Alternatives | `tabs` (synchronized) |35| Screenshots | `figure` with `:zoom: lightbox` `:class: with-border with-shadow` |3637## Critical Rules3839- **UTF-8**, **4-space** indent, **80 char** lines, **LF**40- **CamelCase** files, **sentence case** headings41- **Permalink anchors** (`.. _label:`) before every heading42- **Index.rst** in every subdirectory43- **PNG** screenshots with `:alt:` and `:zoom: lightbox`44- **.editorconfig** in `Documentation/`45- **Screenshots MANDATORY** for backend modules, config, workflows46- **Max 250 lines** per RST -- split with `toctree`47- **No `mailto:`** -- use GitHub Issues/Discussions48- **PHP domain**: no `?Type`/`Type|null` in `php:method::`; use `:returntype:`4950## Code Example Validation5152Cross-reference code examples against extension source:53grep method names in `Classes/`, compare CLI arguments against `configure()`,54verify API signatures match. See `references/extraction-patterns.md`.5556## Pre-Commit Checklist57581. `.editorconfig` in `Documentation/`, `Index.rst` in every directory592. 4-space indent, no tabs, max 80 chars603. Code blocks have `:caption:`, inline code uses proper roles614. Screenshots exist with `:alt:` and `:zoom: lightbox`625. `scripts/validate_docs.sh` passes, render has no warnings636. README and Documentation/ are synchronized6465## References6667- `references/file-structure.md` -- directory layout, naming conventions68- `references/guides-xml.md` -- build configuration, interlink settings69- `references/coding-guidelines.md` -- .editorconfig, indentation rules70- `references/rst-syntax.md` -- headings, list punctuation, doc-review pitfalls71- `references/text-roles-inline-code.md` -- `:php:`, `:file:`, `:guilabel:`, `:ref:`72- `references/code-structure-elements.md` -- code blocks, confval, PHP domain73- `references/typo3-directives.md` -- confval, versionadded, deprecated74- `references/content-directives.md` -- accordion, tabs, card-grid75- `references/screenshots.md` -- image requirements, figure directives76- `references/rendering.md` -- Docker commands, live preview77- `references/intercept-deployment.md` -- webhook, build triggers78- `references/asset-templates-guide.md` -- templates, screenshot workflow79- `references/architecture-decision-records.md` -- ADR patterns80- `references/documentation-coverage-analysis.md` -- coverage scoring81- `references/scripts-guide.md` -- script options82- `references/typo3-extension-architecture.md` -- extension layout8384---8586## Credits & Attribution8788This skill is based on the excellent work by89**[Netresearch DTT GmbH](https://www.netresearch.de/)**.9091Original repository: https://github.com/netresearch/typo3-docs-skill9293**Copyright (c) Netresearch DTT GmbH** — Methodology and best practices (MIT / CC-BY-SA-4.0)9495Special thanks to [Netresearch DTT GmbH](https://www.netresearch.de/) for their generous open-source contributions to the TYPO3 community, which helped shape this skill collection.96Adapted by webconsulting.at for this skill collection