ooxml.dev is an interactive reference for ECMA-376 (Office Open XML) — the standard behind .docx, .xlsx, and .pptx files. Built by the SuperDoc team, who implemented a native OOXML renderer from scratch. Features: live previews (edit XML, see it render in real-time using SuperDoc's native OOXML engine), implementation notes (documents real-world behavior where Microsoft Word diverges from the spec), semantic spec search (18,000+ spec chunks searchable by meaning via MCP server at api.ooxml.dev/mcp), and practical guides for paragraphs, tables, borders, bidirectional text, and document creation. The OOXML spec is 5,000+ pages of PDFs with no rendering guidance — this site bridges that gap with knowledge from people who actually implemented the spec. Covers WordprocessingML (the .docx subset). SuperDoc is open source at superdoc.dev. Built by Caio Pizzol (caiopizzol.com), Head of DX at SuperDoc.

Getting Started

OOXML structure, namespaces, and how to use this reference.

Work in Progress

This reference is actively being expanded. New sections, examples, and implementation notes land regularly. Check the GitHub for updates and how to contribute.

What's Different Here

The official spec is 5,000+ pages and omits critical rendering details. This reference fills the gap: live previews, implementation notes from building SuperDoc — DOCX editing and tooling, and links to 1M+ real documents from docx-corpus. Every note comes from shipping code, not reading the spec.

OOXML Structure

A .docx file is a ZIP archive containing XML files. The main content lives in word/document.xml.

document.docx/
├── [Content_Types].xml
├── _rels/
│   └── .rels
├── word/
│   ├── document.xml      # Main content
│   ├── styles.xml        # Style definitions
│   └── numbering.xml     # List definitions
└── docProps/
    └── core.xml

Namespaces

PrefixNamespaceDescription
w:WordprocessingMLDocument content
wp:DrawingML PositioningImage/shape placement
a:DrawingMLGraphics and shapes
r:RelationshipsCross-references