# SuperDoc > SuperDoc is an open source DOCX Editor and Agent SDK for adding DOCX editing into web apps and agents. It works with JavaScript, React, Vue, Node, Python, and more. SuperDoc is dual-licensed under AGPLv3 and a commercial license. Docs: https://docs.superdoc.dev/ ## Start - [What SuperDoc does](https://docs.superdoc.dev/start/what-superdoc-does): Edit DOCX files in a browser or automate them with the same document engine - [Choose your path](https://docs.superdoc.dev/start/choose-your-path): Start with the visual Editor or a DOCX automation workflow - [How SuperDoc works](https://docs.superdoc.dev/start/how-superdoc-works): Follow a DOCX file from OOXML package to editable document state and back - [Features and surfaces](https://docs.superdoc.dev/start/features-and-surfaces): Understand what belongs to the Editor, Headless workflows, Document API, and agent integrations ## Editor Embed SuperDoc v2 in a web application and keep DOCX as the document format. - [Editor overview](https://docs.superdoc.dev/editor): Embed SuperDoc v2 in a web application and keep DOCX as the document format - [Editor quickstart](https://docs.superdoc.dev/editor/quickstart): Open a real DOCX in the browser, edit it, and export the result - [Load and save documents](https://docs.superdoc.dev/editor/load-and-save-documents): Open a DOCX in the browser, download the edited file, or send its bytes to your backend - [Document modes](https://docs.superdoc.dev/editor/document-modes): Choose whether people can view, edit, or suggest changes to a DOCX ### Interface - [Choose your editor interface](https://docs.superdoc.dev/editor/ui/choose-an-interface): Decide whether to use SuperDoc's built-in UI, configure it, or build your own controls #### Built-in UI - [Built-in UI overview](https://docs.superdoc.dev/editor/built-in-ui/overview): Use SuperDoc's complete editing interface and keep your application focused on the surrounding workflow - [Configure the built-in toolbar](https://docs.superdoc.dev/editor/built-in-ui/configure-the-toolbar): Keep the built-in command behavior while showing only the controls your workflow needs - [Comments in the built-in UI](https://docs.superdoc.dev/editor/built-in-ui/comments): Let people create, reply to, and resolve DOCX comment threads in the Editor - [Find and replace in the built-in UI](https://docs.superdoc.dev/editor/built-in-ui/search-and-replace): Enable SuperDoc's find surface, navigate visible matches, and replace document text - [Links and context menus](https://docs.superdoc.dev/editor/built-in-ui/links-and-context-menus): Configure link behavior and add application actions to the built-in Editor context menu - [Work with structured content](https://docs.superdoc.dev/editor/built-in-ui/structured-content): Expose tables, images, links, and content-control chrome in the built-in Editor interface - [Build a responsive Editor layout](https://docs.superdoc.dev/editor/built-in-ui/responsive-layout): Fit the document to its container, adapt built-in chrome, and refit after fullscreen changes #### Custom UI - [Custom UI overview](https://docs.superdoc.dev/editor/custom-ui/overview): Build application-owned controls over the public SuperDoc v2 UI controller - [Custom UI controller setup](https://docs.superdoc.dev/editor/custom-ui/controller-setup): Bind a custom control to live SuperDoc command state and execute it safely - [React custom UI setup](https://docs.superdoc.dev/editor/custom-ui/react-setup): Bind React controls to the same public SuperDoc UI controller - [Commands and state](https://docs.superdoc.dev/editor/custom-ui/commands-and-state): Keep custom controls synchronized with the Editor and handle command results explicitly - [Handle unavailable commands](https://docs.superdoc.dev/editor/custom-ui/failures-and-capabilities): Turn command state, stable reasons, and mutation receipts into clear custom-UI behavior - [Register custom commands](https://docs.superdoc.dev/editor/custom-ui/custom-commands): Add application-owned actions to the same reactive command system as SuperDoc controls - [Control zoom and document state](https://docs.superdoc.dev/editor/custom-ui/zoom-and-document-state): Build fit-to-width, manual zoom, dirty-state, and export controls around the active document - [Build formatting controls](https://docs.superdoc.dev/editor/custom-ui/formatting-controls): Connect custom font, size, paragraph-style, and document-mode controls to the active Editor state - [Preserve selections and position UI](https://docs.superdoc.dev/editor/custom-ui/selection-and-viewport): Keep a document selection after application controls take focus and anchor custom UI to painted document geometry - [Build a custom comments UI](https://docs.superdoc.dev/editor/custom-ui/comments): Render comment threads from reactive Editor state and run comment actions through the public UI controller - [Build tracked-change review controls](https://docs.superdoc.dev/editor/custom-ui/tracked-changes): Render open changes, move reviewers to them, and await accept or reject decisions from a custom interface - [Build a content-control panel](https://docs.superdoc.dev/editor/custom-ui/content-controls): List document fields, move people to them, and update text controls from application-owned UI - [Build contextual table controls](https://docs.superdoc.dev/editor/custom-ui/tables): Enable application-owned table actions from the current cell and explain why an action is unavailable - [Build custom search controls](https://docs.superdoc.dev/editor/custom-ui/search): Drive the Editor's visual search session from application-owned controls ### Integration - [Configure the Editor](https://docs.superdoc.dev/editor/platform/configuration): Organize SuperDoc initialization around document input, interface, behavior, and host integration - [Handle lifecycle and events](https://docs.superdoc.dev/editor/platform/lifecycle-and-events): Connect Editor readiness, updates, errors, and cleanup to application lifecycle - [Manage document files](https://docs.superdoc.dev/editor/platform/document-management): Replace the active DOCX, export for download or persistence, and define explicit storage ownership - [Open dialogs and floating surfaces](https://docs.superdoc.dev/editor/platform/dialogs-and-floating-surfaces): Render application UI in SuperDoc-managed dialog and floating layers with explicit lifecycle outcomes - [Theme UI and resolve document fonts](https://docs.superdoc.dev/editor/platform/themes-and-fonts): Style SuperDoc chrome without confusing application typography with DOCX font fidelity - [Add spelling and grammar proofing](https://docs.superdoc.dev/editor/platform/proofing): Connect a provider to SuperDoc's segment, scheduling, rendering, and replacement workflow - [Build accessible Editor experiences](https://docs.superdoc.dev/editor/platform/accessibility-and-keyboard): Preserve keyboard access, names, focus, status announcements, and application-owned accessibility around SuperDoc - [Secure browser document workflows](https://docs.superdoc.dev/resources/security): Define trusted boundaries for document access, identity, persistence, integrations, and browser policy ### Review - [Review tracked changes](https://docs.superdoc.dev/editor/review/tracked-changes): Let people propose, inspect, accept, and reject changes in the Editor ### Migrate from v1 - [Migrate from v1](https://docs.superdoc.dev/editor/migrate-from-v1/overview): Move a browser editor from SuperDoc v1 to the v2 DOCX engine - [Removed in v2](https://docs.superdoc.dev/editor/migrate-from-v1/removed-apis): Every v1 import and editor internal that no longer works in SuperDoc v2, and what replaces it ## Agents & automation Route to the right surface for editing DOCX files from code, a shell, or an agent. - [Overview](https://docs.superdoc.dev/agents/overview): Route to the right surface for editing DOCX files from code, a shell, or an agent - [Quickstart](https://docs.superdoc.dev/agents/quickstart): Connect a coding agent to SuperDoc through MCP and produce a reviewable tracked edit ### Agents - [Build an agent](https://docs.superdoc.dev/agents/build/build-an-agent): Give your product's agent document tools with a bounded, verifiable loop - [Tools and presets](https://docs.superdoc.dev/agents/build/tools): Understand the action surface a model sees, and narrow it when a workflow should not reach every operation - [Legacy tools](https://docs.superdoc.dev/agents/build/legacy-tools): What the legacy preset advertises, why it is still the default, and how to move to core ### Automation - [Automate a DOCX with Node.js](https://docs.superdoc.dev/agents/automation/node-sdk): Query a DOCX, accept its tracked changes, and save the result from Node.js - [Automate a DOCX with Python](https://docs.superdoc.dev/agents/automation/python-sdk): Accept tracked changes and save a separate DOCX from Python - [Automate a DOCX from the CLI](https://docs.superdoc.dev/agents/automation/cli): Accept tracked changes and save a separate DOCX from a shell or CI job ### Workflows - [Review tracked changes](https://docs.superdoc.dev/agents/workflows/review-tracked-changes): Create a tracked DOCX edit in code, review it in the embedded editor, and export the decision ### Operate - [Safety](https://docs.superdoc.dev/agents/operate/safety): Operational boundaries to settle before an agent edits documents that matter ## Document API Query a document, identify a target, apply a mutation, and inspect its receipt. - [Document API mental model](https://docs.superdoc.dev/document-api/mental-model): Query a document, identify a target, apply a mutation, and inspect its receipt - [Query document content](https://docs.superdoc.dev/document-api/query-content): Find text in an open DOCX and keep mutation-ready targets - [Replace and delete content](https://docs.superdoc.dev/document-api/replace-delete-content): Use fresh query targets to change an open DOCX and inspect each mutation receipt - [Preview and apply mutation plans](https://docs.superdoc.dev/document-api/mutation-plans): Validate several document edits, then apply them together against one document revision - [Work with tracked changes](https://docs.superdoc.dev/document-api/tracked-changes): Create reviewable edits, inspect open changes, and accept or reject an explicit change - [Create and resolve comment threads](https://docs.superdoc.dev/document-api/comments): Anchor a DOCX comment to document content, add a reply, and resolve the thread - [Receipts and errors](https://docs.superdoc.dev/document-api/receipts-and-errors): Check capabilities, inspect mutation results, and recover safely from stale document state - [Document API reference](https://docs.superdoc.dev/document-api/reference): Search and inspect every operation generated from the canonical Document API contract ### Reference - [Table of Authorities](https://docs.superdoc.dev/document-api/reference/authorities): Table of authorities lifecycle and TA entry operations - [Blocks](https://docs.superdoc.dev/document-api/reference/blocks): Block-level structural operations - [Bookmarks](https://docs.superdoc.dev/document-api/reference/bookmarks): Named bookmark inspection, insertion, renaming, and removal - [Capabilities](https://docs.superdoc.dev/document-api/reference/capabilities): Runtime support discovery for capability-aware branching - [Captions](https://docs.superdoc.dev/document-api/reference/captions): Caption (SEQ field) inspection, insertion, update, removal, and numbering configuration - [Citations](https://docs.superdoc.dev/document-api/reference/citations): Citation, source, and bibliography lifecycle operations - [Clipboard](https://docs.superdoc.dev/document-api/reference/clipboard): Clipboard parsing, model insertion, and selection serialization - [Comments](https://docs.superdoc.dev/document-api/reference/comments): Comment authoring and thread lifecycle operations - [Content Controls](https://docs.superdoc.dev/document-api/reference/content-controls): Content control (SDT) discovery, mutation, typed controls, and Word compatibility - [Core](https://docs.superdoc.dev/document-api/reference/core): Primary read and write operations - [Create](https://docs.superdoc.dev/document-api/reference/create): Structured creation helpers - [Cross-References](https://docs.superdoc.dev/document-api/reference/cross-refs): Cross-reference field inspection, insertion, rebuild, and removal - [Custom XML](https://docs.superdoc.dev/document-api/reference/custom-xml): Custom XML Data Storage Part operations (ECMA-376). Raw read and write of custom XML parts in the OOXML package - [Diff](https://docs.superdoc.dev/document-api/reference/diff): Snapshot-based document comparison and replay - [Index](https://docs.superdoc.dev/document-api/reference/document-index): Index (TABLE OF AUTHORITIES / INDEX field) lifecycle and XE entry operations - [Export](https://docs.superdoc.dev/document-api/reference/export): Modeful DOCX export (review-preserving / final / original) with a structured degradation report - [Fields](https://docs.superdoc.dev/document-api/reference/fields): Raw field code inspection, insertion, rebuild, and removal - [Footnotes](https://docs.superdoc.dev/document-api/reference/footnotes): Footnote and endnote lifecycle and numbering configuration - [Format](https://docs.superdoc.dev/document-api/reference/format): Canonical formatting mutation with directive semantics ('on', 'off', 'clear') - [Paragraph Formatting](https://docs.superdoc.dev/document-api/reference/format/paragraph): Paragraph-level direct formatting: alignment, indentation, spacing, borders, shading, and more - [Headers & Footers](https://docs.superdoc.dev/document-api/reference/header-footers): Structure, references, and part lifecycle for document headers and footers - [History](https://docs.superdoc.dev/document-api/reference/history): Undo/redo history state and navigation - [Hyperlinks](https://docs.superdoc.dev/document-api/reference/hyperlinks): Hyperlink discovery, creation, and metadata management - [Images](https://docs.superdoc.dev/document-api/reference/images): Image lifecycle, placement, and wrap configuration - [Lists](https://docs.superdoc.dev/document-api/reference/lists): List inspection and list mutations - [Anchored Metadata](https://docs.superdoc.dev/document-api/reference/metadata): Attach a JSON payload to a span of text and read it back across DOCX round-trips - [Mutations](https://docs.superdoc.dev/document-api/reference/mutations): Atomic mutation plan preview and execution - [Permission Ranges](https://docs.superdoc.dev/document-api/reference/permission-ranges): Permission range exception operations for protected documents - [Protection](https://docs.superdoc.dev/document-api/reference/protection): Document-level protection state and editing restriction operations - [Query](https://docs.superdoc.dev/document-api/reference/query): Deterministic selector-based queries for mutation targeting - [Ranges](https://docs.superdoc.dev/document-api/reference/ranges): Deterministic range construction from explicit document anchors - [Sections](https://docs.superdoc.dev/document-api/reference/sections): Section structure and page-setup operations - [Selection](https://docs.superdoc.dev/document-api/reference/selection): Read the editor's current selection as a portable, addressable target - [Styles](https://docs.superdoc.dev/document-api/reference/styles): Document-level stylesheet mutations (docDefaults, style definitions) - [Paragraph Styles](https://docs.superdoc.dev/document-api/reference/styles/paragraph): Paragraph style reference operations (set/clear w:pStyle) - [Tables](https://docs.superdoc.dev/document-api/reference/tables): Table structure, layout, styling, and cell operations - [Templates](https://docs.superdoc.dev/document-api/reference/templates): Apply detected DOCX template/substrate from a source package onto the current document while preserving body content - [Table of Contents](https://docs.superdoc.dev/document-api/reference/toc): Table of contents lifecycle and configuration - [Track Changes](https://docs.superdoc.dev/document-api/reference/track-changes): Tracked-change inspection and review operations ## Machine-readable exports - [Docs index (llms.txt)](https://docs.superdoc.dev/llms.txt): Canonical documentation index for SuperDoc v2 - [Guide corpus](https://docs.superdoc.dev/llms-full.txt): All authored guides in one file, without the generated API reference - [Document API reference corpus](https://docs.superdoc.dev/llms-reference.txt): Exhaustive generated reference — prefer focused reference pages when only a few operations are needed ## Resources - [Status](https://status.superdoc.dev): API and service health - [GitHub examples](https://github.com/superdoc/docx-editor/tree/main/examples): Working code examples - [Pricing](https://superdoc.dev/#pricing): AGPLv3 and commercial licensing ## Ecosystem SuperDoc powers a family of specialized sites: - [docx.tools](https://docx.tools): Free, private DOCX tools that run entirely in the browser — view, redact, clean, convert to HTML/Markdown. No upload, no server. Powered by the SuperDoc rendering engine. - [docxcorp.us](https://docxcorp.us): 736K classified Word documents from the public web. The largest open DOCX dataset for document AI, NLP, and parsing research. - [ooxml.dev](https://ooxml.dev): The OOXML spec you can actually read — ECMA-376 reference with live previews, implementation notes, real-world gotchas, and an MCP server for AI integration. Built by the SuperDoc team.