---
title: Writing documentation
framework: xcode
role: collectionGroup
path: xcode/writing-documentation
---

# Writing documentation

Produce rich and engaging developer documentation for your apps, frameworks, and packages.

## Overview

Overview The DocC documentation compiler converts Markdown-based text into rich documentation for Swift and Objective-C frameworks, packages, and apps to display in Xcode’s documentation window or host on a website. DocC syntax — called documentation markup — is a custom variant of Markdown that adds functionality for developer documentation-specific features, like cross-symbol linking, term-definition lists, code listings, and asides. You add documentation markup to your source code, use Xcode’s Build Documentation feature to compile it with DocC, and produce reference documentation for your APIs. You can also use documentation markup, along with a set of directives that instruct how DocC generates your content, to offer step-by-step tutorials that teach developers to use your APIs through interactive coding exercises. For a deeper understanding of DocC and guidance on its usage, please consult the DocC documentation available at DocC Swift.org.

## Topics

### Essentials

- [Documenting apps, frameworks, and packages](xcode/documenting-apps-frameworks-and-packages.md)

### Documentation content

- [Writing symbol documentation in your source files](xcode/writing-symbol-documentation-in-your-source-files.md)
- [Adding supplemental content to a documentation catalog](xcode/adding-supplemental-content-to-a-documentation-catalog.md)
- [SlothCreator: Building DocC documentation in Xcode](xcode/slothcreator-building-docc-documentation-in-xcode.md)

### Structure and formatting

- [Adding structure to your documentation pages](xcode/adding-structure-to-your-documentation-pages.md)

### Distribution

- [Distributing documentation to other developers](xcode/distributing-documentation-to-other-developers.md)
