Skip to content

netresearch/typo3-docs-skill

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

8 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

TYPO3 Documentation Skill

A comprehensive Claude Code skill for creating and maintaining TYPO3 extension documentation following official TYPO3 documentation standards.

Overview

This skill provides guidance for working with TYPO3 extension documentation in reStructuredText (RST) format, including TYPO3-specific directives, local rendering with Docker, validation procedures, and automated deployment through TYPO3 Intercept.

Features

  • Documentation Extraction - Automated extraction from code, configs, and repository metadata
  • Gap Analysis - Identify missing and outdated documentation
  • RST Syntax Reference - Complete reStructuredText formatting guide
  • TYPO3-Specific Directives - confval, versionadded, php:method, card-grid
  • Local Rendering - Docker-based documentation rendering scripts
  • Validation Tools - RST syntax and quality check scripts
  • Quality Standards - Pre-commit checklists and best practices
  • TYPO3 Intercept - Automated deployment guidance
  • AI Assistant Context - AGENTS.md templates for Documentation/ folders

Installation

Download the Skill

Download the latest release from the releases page or install directly:

# Using curl
curl -L https://github.com/netresearch/typo3-docs-skill/archive/refs/heads/main.zip -o typo3-docs.zip
unzip typo3-docs.zip -d ~/.claude/skills/
mv ~/.claude/skills/typo3-docs-skill-main ~/.claude/skills/typo3-docs

# Or using git
git clone https://github.com/netresearch/typo3-docs-skill.git ~/.claude/skills/typo3-docs

Verify Installation

The skill will automatically activate when working with TYPO3 documentation:

  • Creating/updating Documentation/*.rst files
  • Using TYPO3-specific directives
  • Rendering documentation locally
  • Following TYPO3 documentation guidelines

Contents

SKILL.md

Main skill file with comprehensive instructions for:

  • Documentation structure and workflow
  • Configuration documentation with confval
  • Version documentation with versionadded/versionchanged
  • PHP API documentation with php:method
  • Card grid navigation with stretched links
  • Cross-references and quality standards

references/

rst-syntax.md - Complete RST syntax reference:

  • Headings, code blocks, lists, links
  • Tables, admonitions, images
  • Whitespace rules and common mistakes

typo3-directives.md - TYPO3-specific directives:

  • confval for configuration values
  • Version directives (added/changed/deprecated)
  • PHP domain (class/method/property)
  • Card grids with stretched links
  • Intersphinx references
  • Quality checklists

extraction-patterns.md - Documentation extraction guide:

  • Multi-source extraction patterns (PHP, configs, repository)
  • Data-to-RST mapping strategies
  • Gap analysis workflow
  • Template generation approaches
  • Quality standards for extraction

typo3-extension-architecture.md - TYPO3 official file structure reference:

  • File structure hierarchy with priority weights
  • Directory structure weights (Classes/, Configuration/, Resources/)
  • Extraction weight matrix (Priority 1-5)
  • Quality weighting algorithm
  • Gap analysis priority calculation
  • Documentation mapping strategies

templates/

AGENTS.md - AI assistant context template:

  • Documentation strategy and audience
  • TYPO3 RST syntax patterns
  • Directive usage examples
  • Cross-reference patterns
  • Validation and rendering procedures

scripts/

add-agents-md.sh - Add AI context to Documentation/:

  • Creates AGENTS.md from template
  • Provides documentation context for AI assistants
  • Helps AI understand project documentation structure

validate_docs.sh - Validation script:

  • Checks RST syntax
  • Validates Settings.cfg and Index.rst
  • Detects encoding issues
  • Identifies trailing whitespace

render_docs.sh - Rendering script:

  • Renders documentation locally with Docker
  • Uses official TYPO3 render-guides image
  • Outputs to Documentation-GENERATED-temp/

extract-all.sh - Documentation extraction orchestrator:

  • Extracts data from PHP code, extension configs, composer.json
  • Optional: build configs (.github/workflows, phpunit.xml)
  • Optional: repository metadata (GitHub/GitLab API)
  • Outputs to .claude/docs-extraction/data/*.json

analyze-docs.sh - Documentation coverage analysis:

  • Compares extracted data with existing Documentation/
  • Identifies missing and outdated documentation
  • Generates Documentation/ANALYSIS.md with recommendations
  • Prioritizes action items for systematic documentation

extract-php.sh - PHP code extraction:

  • Parses Classes/**/*.php for docblocks and signatures
  • Extracts class descriptions, methods, constants
  • Outputs to .claude/docs-extraction/data/php_apis.json

extract-extension-config.sh - Extension configuration extraction:

  • Parses ext_emconf.php for extension metadata
  • Parses ext_conf_template.txt for configuration options
  • Identifies security warnings in config comments
  • Outputs to extension_meta.json and config_options.json

extract-composer.sh - Composer dependency extraction:

  • Extracts requirements and dev-requirements
  • Outputs to .claude/docs-extraction/data/dependencies.json

extract-project-files.sh - Project file extraction:

  • Extracts content from README.md, CHANGELOG.md
  • Outputs to .claude/docs-extraction/data/project_files.json

extract-build-configs.sh - Build configuration extraction (optional):

  • Extracts CI/CD configurations, PHPUnit settings
  • Outputs to .claude/docs-extraction/data/build_configs.json

extract-repo-metadata.sh - Repository metadata extraction (optional):

  • Fetches GitHub/GitLab repository information
  • Requires gh or glab CLI tools
  • Outputs to .claude/docs-extraction/data/repo_metadata.json
  • Cached for 24 hours

Usage

The skill automatically activates for TYPO3 documentation tasks. You can also manually invoke it:

/skill typo3-docs

Quick Examples

Add AI Assistant Context:

cd /path/to/your-extension
~/.claude/skills/typo3-docs/scripts/add-agents-md.sh
# Creates Documentation/AGENTS.md with TYPO3 documentation patterns

Extract and Analyze Documentation:

cd /path/to/your-extension

# Extract data from code and configs
~/.claude/skills/typo3-docs/scripts/extract-all.sh

# Analyze documentation coverage
~/.claude/skills/typo3-docs/scripts/analyze-docs.sh

# Review the analysis report
cat Documentation/ANALYSIS.md

# Extract with optional sources
~/.claude/skills/typo3-docs/scripts/extract-all.sh --all  # Include build configs & repo metadata

Document Configuration:

.. confval:: fetchExternalImages

   :type: boolean
   :Default: true
   :Path: $GLOBALS['TYPO3_CONF_VARS']['EXTENSIONS']['ext_key']['setting']

   Controls whether external image URLs are automatically fetched.

Document Version Changes:

.. versionadded:: 13.0.0
   The CKEditor plugin now requires ``StyleUtils`` and ``GeneralHtmlSupport``
   dependencies for style functionality.

Create Card Grid Navigation:

.. card-grid::
    :columns: 1
    :columns-md: 2

    ..  card:: πŸ“˜ Introduction

        Extension overview and features

        ..  card-footer:: :ref:`Read more <introduction>`
            :button-style: btn btn-primary stretched-link

Validate Documentation:

~/.claude/skills/typo3-docs/scripts/validate_docs.sh /path/to/project

Render Documentation:

~/.claude/skills/typo3-docs/scripts/render_docs.sh /path/to/project

Deployment Setup

Enable automatic documentation publishing to docs.typo3.org:

Prerequisites

  1. Extension published in TYPO3 Extension Repository (TER)
  2. Git repository URL referenced on TER detail page
  3. Valid Documentation/ structure with Index.rst and Settings.cfg

Quick Webhook Setup

GitHub:

Settings β†’ Webhooks β†’ Add webhook
Payload URL: https://docs-hook.typo3.org
Content type: application/json
SSL: Enabled
Events: Just the push event
Active: βœ“

GitLab:

Settings β†’ Webhooks
URL: https://docs-hook.typo3.org
Triggers: Push events + Tag push events
SSL: Enabled

Verification

After first push, check:

  • Webhook delivery: GitHub/GitLab webhook recent deliveries (expect 200)
  • Build status: Intercept Dashboard
  • Published docs: https://docs.typo3.org/p/{vendor}/{extension}/main/en-us/

First build requires approval by TYPO3 Documentation Team (1-3 business days). Future builds are automatic.

Full webhook setup guide: references/intercept-deployment.md

Quality Standards

Before committing documentation changes, ensure:

  • βœ… No rendering warnings
  • βœ… No broken cross-references
  • βœ… All confval directives complete
  • βœ… Version information for new features
  • βœ… Card grids use stretched-link
  • βœ… UTF-8 emoji icons in card titles
  • βœ… Code blocks specify language
  • βœ… Proper heading hierarchy
  • βœ… No trailing whitespace

Resources

Official Documentation:

Example Projects:

TYPO3 Intercept:

Contributing

Contributions are welcome! Please follow these guidelines:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/improvement)
  3. Make your changes
  4. Test the skill thoroughly
  5. Commit your changes (git commit -m 'Add improvement')
  6. Push to the branch (git push origin feature/improvement)
  7. Create a Pull Request

License

This skill is licensed under the same license as the TYPO3 RTE CKEditor Image extension - GPL-2.0-or-later.

Support

Issues and Questions:

Credits

Created by Netresearch DTT GmbH for the TYPO3 community.

Based on:


Version: 1.0.0 Maintained By: Netresearch DTT GmbH Last Updated: 2025-10-18

About

Claude Code skill for creating and maintaining TYPO3 extension documentation

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages