Dita, Component Content Management System

This project is not covered by Drupal’s security advisory policy.

Built by a human using an AI assistant: 🤖 ➕ 🧠

Note that extensive parts of this module was generating via AI coding agents under human supervision.

DITA (Darwin Information Typing Architecture) content management and publishing in Drupal.

What is DITA? DITA is an open standard from OASIS for writing documentation as typed, reusable topics (for example: task, concept, and reference) that are assembled via maps and published to multiple outputs (HTML, PDF, help systems, etc.). DITA is XML-based and designed for single-sourcing, reuse, and structured publishing at scale.

See the OASIS DITA FAQ for an authoritative overview: What is DITA?.

DITA CCMS brings full Component Content Management System (CCMS) capabilities to Drupal: author and manage DITA topics and maps, import/export DITA XML, publish to HTML/PDF/EPUB/JSON, and automate documentation with Drupal’s AI and workflow tools.

Features

  • DITA topics & maps — Task, concept, reference, and generic topic types via ECK; hierarchical maps
  • Import/export — DITA XML import; export to DITA XML, HTML, JSON, PDF, EPUB
  • Content moderation — Workflow from draft to published; translation-ready
  • Auto-documentation — Generate reference docs from OpenAPI specs, config schema, and entity definitions
  • AI integration — Optional AI-generated summaries and OpenAPI-to-DITA (Drupal AI module)
  • ECA workflows — Trigger doc rebuilds, validate, and automate with ECA
  • APIs — REST, GraphQL, JSON:API; optional OSSA-style health/capabilities endpoints

Requirements

  • Drupal 10.3+ or Drupal 11
  • PHP 8.1+
  • ECK, Content Moderation, and other dependencies (see module README)

Installation

$ composer require drupal/dita_ccms
$ drush en dita_ccms -y

Configure at Configuration → Content authoring → DITA CCMS
(/admin/config/content/dita-ccms).

Documentation

License

GPL-2.0-or-later. See the module’s LICENSE.txt.

This project page is maintained outside the module repo to keep the module tree clean.

Supporting organizations: 
Full contrib and development resources

Project information

Releases